View Full Version : سوال: برگداندن یک مقدار از service به clind sid
rahnamafar
چهارشنبه 06 اردیبهشت 1391, 20:46 عصر
سلام
میخواهم یک مقدار bool از طرف سرویس به طرف کلاینت برگرده به طور مثال کد طرف وب:
OperationContract]
public
bool find(int f, int d)
{}
و حالا کد طرف کاربر:
void button7_Click(object sender, RoutedEventArgs e)
(
Service1Client find = newService1Client();
find.findAsync(int.Parse(textBox7.Text), int.Parse(textBox8.Text));
}
وقتی موس رو روی findAsyncتابع خروجی از نوع void هست نگه میدارم میکه این
d_derakhshani
چهارشنبه 06 اردیبهشت 1391, 22:55 عصر
از WCF استفاده کردید. از RIA Serrvice استفاده کنید بهتر و راحت تره.
وقتی از Async استفاده می کنید همانطور که از اسمش مشخصه جواب به صورت غیر همزمان میاد پس در خط مورد نظر منتظر رسیدن جواب نباشید. باید در CallBack جواب رو بگیرید.
این کد رو قبل فراخوانی بنویسید
find.findCompleted += new EventHandler<findCompletedEventArgs>(find_findCompleted);
در تابع زیر در e.Result خروجی فراخوانی تابع موجود
void find_findCompleted(object sender, findCompletedEventArgs e)
{
e.Result
}
برای اسم متغیر سرویس هم از کلماتی مثال svc، proxy و یا client یا ترکیب دو تا از اینها استفاده کنید. این طوری بهتره و موجب گنگی نمیشه
rahnamafar
سه شنبه 12 اردیبهشت 1391, 21:48 عصر
:چشمک:سلام
تا اینجا که بتونم مقدار ها رو داخل یک گراید بریزم با دستور datagrid1.itemsurce=e.result مشکلی نیست حالا میخواهم مقدار که از e.result می گیریم بریزم داخل یک
شی از نوع list<> یا به صورت دیگه ای و مقدار ها رو تک تک جدا کنم بریزم تو تکست باکسها مثل نام و نام خو ....
ممنون میشم کمک کنید d_derakhshani
rahnamafar
پنج شنبه 14 اردیبهشت 1391, 23:41 عصر
سلام
فکر کنم سوالم رو بد شرح دادم خلاصه اینکه
میخواستم تو دیتا جستو کنم مقداری که بعنوان جستجو برگردونده شده رو داخل تکست باکسها بریزم از طریق wcf .متدی که که این کار رو انجام میده در طرف سرویس همون متدی که اطلاعات رو داخل گرید برمیگردونه با یکسری دستوارت sql اضافی و اما کدی که مقدار ها رو داخل تکس باکس های میریزه اینه....
peson g=e.Result[0];
texbox1.text=g.custormertid1.tostring()
............
d_derakhshani
جمعه 15 اردیبهشت 1391, 22:03 عصر
راستش من خوب متوجه نشدم شما دقیقا چی می خواید. اما یک توضیحات کلی میدم. نوع خروجی تایع جستجو تون رو List<class> قرار بدید. بعد جستجو در سرویس مقدار رو به صورت لیست برگردونید(اگه در این قسمت مشکل دارید بگید. و همچنین کدهای نوشته شده برای این قسمت هم قرار بدید).
در کلاینت نوع خروجی e.Result هم از نوع لیست خواهید بود. حال می تونید این مقدار رو به DataSource یک Grid بدید. اما از اونجا که لیست هست نمی تونید مستقیم لیست رو به TextBox بدید باید اول رکورد رو انتخاب کنید(مثلا ولی) بعد فیلد مربوطه شی انتخابی رو به تکست باکس مربوطه بدید. دقیقا مثل کدی که گذاشتید. حالا مشکل شما در کدوم قسمته؟
rahnamafar
جمعه 15 اردیبهشت 1391, 22:42 عصر
من مشکلم با کدی که نوشتم حل شد(درواقع جواب سوالم رو تو پست قبلی دادم )
ممنون که جواب دادید. حالا میخواهم با ria کار کنم دنبال یک لبنک خوب برای کار درج و حذف و آپدیت می گردم خودم سرچ زدم یک کلیپ 7 دقیفه ای از youtube گیر اوردم ام کیفیت پایینی داره - اصلا برای اینکه کار با ria رو از پایه شروع کنم چیکار کنم (یک فایل یا یک لینک)؟؟؟؟
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.