سبد (0)

اضافه کردن Service Reference

آموزش WCF -اضافه کردن Service Reference

در مطلب قبل، نحوه استفاده از یک سرویس مستقر در IIS را در یک Workflow توضیح دادیم. اما روش دیگری که برای استفاده از یک سرویس WCF وجود دارد این است که آنرا به قسمت Service Reference پروژه اضافه کنیم و از آن مانند یک اکتیویتی Local استفاده کنیم.

مراحل انجام کار

برای انجام این کار مراحل زیر را طی نمایید:

  1. اضافه کردن سرویس در پنل Solution
  2. ایجاد و طراحی Workflow
  3. اجرای Workflow

اضافه کردن سرویس در پنل Solution

در پنل Solution Explorer روی References راست کلیک کرده و گزینه Add Service Reference را انتخاب نمایید:

سپس در پنجره Add Service Reference روی فلش کنار دکمه ی Discover کلیک کرده و گزینه ی "Services in Solution" را انتخاب نمایید. حالا بصورت خودکار سرویسی که در مطالب قبل ایجاد کردیم (ایجاد اولین سرویس WCF) و هم اکنون در Solution وجود دارد، یافت شده است. در ادامه به راحتی با کلیک کردن روی دکمه ی OK می توانیم آنرا به پروژه جاری اضافه کنیم:

بلافاصله بعد از کلیک روی دکمه OK پیغام زیر، ظاهر می شود. و نشان می دهد که عملیات "اضافه کردن سرویس" با موفقیت انجام شده است. و می گوید: "برای مشاهده اکتیویتی مربوط به سرویس در پنل Toolbox باید پروزه را Build کنید."

بنابراین یکبار پروژه را Build نمایید.


ایجاد و طراحی Workflow

فایل Workflow1.xaml که بصورت اتوماتیک توسط Visual Studio ساخته شده است را باز کنید و کارهای زیر را انجام دهید:

  1. از پنل Toolbox، اکتیویتی GetData را بداخل صفحه بکشید و مطابق شکل زیر خصوصیات آنرا در پنجره Properties تنظیم نمایید.
  2. مطابق شکل زیر از پنل Toolbox اکتیویتی WriteLine را به داخل Sequence بکشید و آنرا مطابق زیر تنظیم نمایید.


اجرای Workflow

پروژه SendAndReceive را بعنوان پروژه StartUp تنظیم نمایید و در ادامه برای اجرای Workflow دکمه های میانبر Ctrl+F5 را فشار دهید. همان طور که می بینید، دو عدد 20 و 30 توسط سرویس با هم جمع شده و نتیجه در Console نمایش داده می شود:

توجه: استفاده از سرویس WCF به شکلی که در بالا توضیح داده شد، بسیار آسان است اما توجه داشته باشید که استفاده از این روش اشکالات زیر را دارد:

  • اضافه کردن service reference در Visual Studio 2010 به بالا قابل دسترس است.
  • با کمترین تغییر در سرویس WCF شما هم باید service reference را update کرده و مجدداً برنامه را کامپایل کنید.
  • موقع برنامه‌نویسی کلاینت، سروری که سرویس روی آن قرار دارد باید در حال اجرا و در دسترس باشد در غیر این صورت نمی‌توانید عملیات اضافه کردن service reference را انجام دهید.
  • زمانی که تعداد سیستم های Workflow زیادی داریم، اضافه کردن service reference کار عاقلانه ای نیست.
تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه