PDA

View Full Version : سوال: استفاده از LINQ در سیلورلایت



shervinrv
چهارشنبه 29 تیر 1390, 11:40 صبح
سلام دوستان
قبل از مطرح کردن سوال یه توضیحی بدم در مورد اینکه چرا تو بخش خود LINQ تاپیک نزدم
من اول اونجا تاپیک زدم چون فکر نمیکردم مشکلم مربوط به سیلورلایت بشه
بعد که مشخص شد مشکل مربوط به سیلورلایته چند روزه جوابی نگرفتم و واقعا کارم لنگ مونده
از طرفی من فکر میکنم سوالم من بیشتر مربوط به سیلورلایت میشه تا خود لینک
چون سوال در مورد نحوه به کار گرفتن لینک در سیلورلایته
امیدوارم استنباطم درست بوده باشه و تاپیکو جای مناسبی زده باشم
از طرفی توی این بخش دوستان سیلورلایت کار میکنن و قطعا میتونن کمک کنن

ببینید من میخوام برای برقراری ارتباط و انجام عملیات مربوط به دیتابیس از LINQ استفاده کنم
تا اینجا از جستجو توی سایتای خارجی اینجور دستگیرم شد که بعد از اضافه کردن دیتابیس به کلاس LINQ TO SQL باید SERVICE REFERENCE و SILVERLIGHT ENABLE-WCF SERVICEرو اضافه کنم

حالا مشکل از اینجا به بعده که من کجا باید کد های LINQ رو بنویسم
تا اونجاییکه متوجه شدم باید توی همون فایل SILVERLIGHT ENABLE-WCF SERVICE که اضافه کردیم بنویسم

خب ینی واسه هر دستور یک PUBLIC SUB ایجاد میکنم ؟

حالا توی برنامم چطور این کد هارو فراخوانی کنم ؟ و چطور بکار بگیرمشون

باور کنید شاید 10 روزه دارم فقط سرچ میکنم و در این زمینه کم کاری نکردم چون کلا از تاپیک زدن خوشم نمیاد
ولی در این مورد فقط تونستم یک صفحه در اینترنت پیدا کنم اونم به زبون C# بود و خیلی گنگ

راستی من با VB.NET کار میکنم

ببخشید خیلی پرچونگی کردم

پیشاپیش از کمکتون ممنونمhttp://www.pic4ever.com/images/4xvim2p.gif

sunn789
چهارشنبه 29 تیر 1390, 18:57 عصر
سلام
یه جای کارتون مشکل داره
خوب من کد ها رو تو سی شارپ میگم شما اگه تونستی به وی بی تغییر بده اگه نتونستی بگو تا خودم تا جایی که بتونم عوضشون کنم
شما زمانی که یک پروژه سیلور ایجاد میکنید فضای نامی linq به بالای پروژه در قسمت import (در وی بی )اضافه میشه
برای استفاده از بانک در حال حاضر میتئنید از دیتا ست و یا linq و با ado.net entity استفاده کنی که الان بیشترین کاربرد رو ado داره البته هنوز دو تکنولوژی دیگه هم کورد استفاده در سطح وسیعی هستند
خوب برای استفاده از linq هم فقط کافیه در قسمت کد نویسی هر صفحه شما دربیمن متدها کدهای linq رو بنویسی
var res = from item in db.tnlUser
where item.Id == 3
Select item
توی قسمت بالا db نمونه ایجاد شده از ado.net entity است و tblUser جدولی است که شما توی بانک ایجاد کردین و ID هم نام ستونش هست
و بعد شما میتونید از res به عنوان Source هر کنترلی که دوست داشتی استفده کنید

shervinrv
چهارشنبه 29 تیر 1390, 20:55 عصر
سلام دوست عزیز
خیلی ممنون از توجهتون

کارهایی که گفته بودید رو انجام دادم

شما خودت با همین روش روی سیلورلایت انجام دادید ؟ چون من تو اینترنت خوندم که به این روش که تو پروژه های معمولی کار میکنیم نمیشه تو سیلورلایت کار کرد

ینی این مسئله از سیلورلایت 4 پیش اومده

ببینید من دقیقا این کارارو انجام دادم

1- دیتابیس رو به پروژه اضافه کردم
2- توی صفحه کدهام System.LINQ رو Import کردم
3- یه کد ساده LINQ نوشتم

اصلا db که میزنم نمیشناستش
در صورتی که همین کارو تو یه پروژه ویبی میزنم db رو میشناسه و یه . هم بعدش میزنم لیست جداول رو میاره که انتخاب کنم
ولی تو سیلورلایت اصلا اینطور نیست


واقعا دیگه هنگ کردم :(

sunn789
چهارشنبه 29 تیر 1390, 22:27 عصر
خوب من خودم در حال حاضر که با سیلور لایت کار میکنم از همین روش استفاده میکنم و از ado.net entity که اون رو به پروژه اضافه میکنم و بعد از entity هون یک نمونه به اسم db میسازم و ائن رو وی linq استفاده میکنم تا به حال تو این مراحل مشکلی نداشتم و اطلاعات رو خوندم از بانک اطلاعاتی