آموزش Workflow – آموزش کار با اکتیویتی Switch

آموزش Workflow – آموزش کار با اکتیویتی Switch
آموزش Workflow – آموزش کار با اکتیویتی Switch

 

با سلام. با آموزش Workflow –آموزش کار با اکتیویتی Switch از وب سایت آموزش برنامه نویسی سورس دون در خدمت دوستان هستیم. در قسمت شرط اکتیویتی Switch علاوه بر رشته از object نیز می توان استفاده نمود. در این دوره،آموزش Workflow در ۴۶ جلسه بصورت متنی به شما آموزش داده خواهد شد. لطفا تا انتها با ما همراه باشید…

آموزش Workflow – آموزش کار با اکتیویتی Switch

پروژه گردش کار UsingForeachActivity شامل چهار مرحله زیر است:

  1. ایجاد یک پروژه از نوع Workflow Console Application
  2. ایجاد کلاس Product
  3. ایجاد کلاس ProductConverter
  4. وارد کردن (import) نِیم اسپیس UsingSwitchActivityInSequenceWorkflow به Workflow
  5. طراحی Workflow و نحوه ی استفاده از Switch
  6. اجرای Workflow
  7. سیستم گردش کار UsingSwitchActivityInSequenceWorkflow چگونه کار می کند؟

۱ – ایجاد یک پروژه از نوع Workflow Console Application

یک پروژه جدید از نوع Workflow Console Application ایجاد کرده و آنرا UsingSwitchActivityInSequenceWorkflow نامگذاری کنید.

۲ – ایجاد کلاس Product

در پنل Solution Explorer روی پروژه UsingSwitchActivityInSequenceWorkflow راست کلیک کرده و گزینه Add -> New Item را انتخاب نمایید. در پنجره Add New Item، نام فایل را “Product.cs” قرار داده و روی دکمه Add کلیک نمایید. حالا کدهای زیر را در فایل Product.cs کپی و پیست نمایید:

 

 

۳ – ایجاد کلاس ProductConverter

یکبار دیگر در پنل Solution Explorer روی پروژه UsingSwitchActivityInSequenceWorkflow راست کلیک کرده و گزینه Add -> New Item را انتخاب نمایید. در پنجره Add New Item، نام فایل را “ProductConverter.cs” تنظیم کنید و روی دکمه Add کلیک نمایید. حالا فایل ProductConverter.cs را باز نمایید و کدهای زیر را در آن پیست کنید:

با استفاده از کلاس ProductConverter، اکتیویتی Switch می تواند Product را به رشته و یا برعکس تبدیل کند. قبل از اینکه مرحله بعد را انجام دهیم، برای اینکه نوع Product و ProductConverter در پروژه شناسایی شود، نیاز داریم که پروژه را Build کنیم.

 

۴ – وارد کردن (import) نِیم اسپیس UsingSwitchActivityInSequenceWorkflow به Workflow

در ادامه فایل Workflow1.xaml را باز کرده و از پایین پنجره، تب Imports را انتخاب نمایید، سپس از بالای پنل باز شده روی لیست کشویی کلیک کرده و از بین گزینه ها، UsingSwitchActivityInSequenceWorkflow را انتخاب نمایید.

 

۵ – طراحی Workflow و نحوه استفاده از Switch

از پنل Solution Explorerr فایل Workflow1.xaml را باز کنید و Workflow را مطابق زیر طراحی نمایید:

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

نکته!!! زمانی که اکتیویتی Switch را به داخل صفحه طراحی Workflow می کشید، بلافاصله پنجره “Select Types” نمایان می شود:

از لیست کشویی، باید گزینه Brows for Type را انتخاب کنید، بلافاصله پنجره “Brows and Select” نمایان خواهد شد. مطابق شکل زیر، گزینه Product را انتخاب کنید و روی دکمه OK کلیک نمایید:

۶ – اجرای Workflow

پروژه UsingSwitchActivityInSequenceWorkflow را بعنوان پروژه StartUp تنظیم نمایید و در ادامه برای اجرای Workflow دکمه های میانبر Ctrl+F5 را فشار دهید. با این کار Workflow ذخیره شده و بدون عملیات debugging نتیجه نشان داده خواهد شد. همان طور که می بینید، نتیجه در Console ویندوز اجرا می شود:

 

۷ – سیستم گردش کار UsingSwitchActivityInSequenceWorkflow  چگونه کار می کند؟

همان طور که می دانید در #C با استفاده از دستور Switch، تنها روی انواعی مثل Boolean و Int32 و String و enumeration می توان مقایسه انجام داد. اما در WF4 و نسخه های بعدی، علاوه بر انواع مذکور، روی نوع user-defined نیز می توان شرط تساوی را چک نمود.

برای فعال کردن ویژگی بالا، مراحل زیر باید انجام شود:

  1. ایجاد یک کلاس converter برای تبدیل یک شی از نوع user-defined به نوع String و برعکس از String به user-defined
  2. Override کردن دو متد زیر که مربوط به کلاس user-defined هستند. در اینجا کلاس user-defined تعریف شده توسط ما کلاس Product است:

اطلاعات فايل