دوره‌ای که می‌تونه مسیر شغلیت رو عوض کنه! دوره‌ای که می‌تونه مسیر شغلیت رو عوض کنه!
🎯 ثبت نام
بستن تبلیغات
تسلط کامل بر سی‌شارپ با یک دوره پروژه‌محور

یادگیری سی شارپ از مفاهیم پایه تا پروژه محور: شی‌گرایی، کار با SQL و LINQ، ORMها (Entity Framework)، ساخت پروژه مدیریت رستوران با گزارشات حرفه‌ای و امکانات کامل!

مشاهده بیشتر
تسلط جامع بر MVC Core برای توسعه وب حرفه‌ای

یادگیری MVC Core از مبانی تا پیشرفته: شی‌گرایی، Routing، Entity Framework، امنیت، تست یونیت، Razor، Ajax، و پروژه‌های کاربردی! یک دوره کامل برای تسلط بر توسعه وب با ASP.NET Core. به صورت حضوری و آنلاین!

مشاهده بیشتر

Self-hosting (میزبانی سرویس در یک اپلیکیشنConsole)

دوره های پیشنهادی

WCF –Self-hosting )میزبانی سرویس در یک اپلیکیشن (Console

در این آموزش سرویس WCF بر روی یک اپلیکیشن console میزبانی می شود. در زیر نحوه ی میزبانی سرویس در این اپلیکیشن را به صورت گام به گام شرح می دهیم.

گام اول –ابتدا به ایجاد service contract و پیاده سازی آن می پردازیم. برای این منظور یک اپلیکیشن Console ایجاد کرده و آن را MyCalculatorService نام گذاری می کنیم. این سرویس یک عملیات محاسباتی ساده را انجام داده و جمع دو عدد را در خروجی برمی گرداند.

آموزش WCF

گام دوم –حال بر روی References در Solution Explorer راست کلیک کرده و سپس گزینه ی Add References را انتخاب کنید. پنجره ی زیر به نمایش در می آید. ارجاع System.ServiceModel را به پروژه اضافه نمایید.

آموزش WCF

گام سوم –یک رابط ISimpleCalculator ایجاد کرده، سپس attribute های ServiceContract و OperationContract را مانند زیر به کلاس و تابع اضافه نمایید. در آموزش های بعدی درباره ی هر یک از این contract ها توضیحات بیشتری را خواهیم داد. در توضیحی مختصر می توان گفت که این contract ها متد (عملیاتی که سرویس انجام می دهد) را در دسترس کلاینت قرار می دهند.

گام چهارم –code behind این فایل به ترتیب زیر می باشد:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
namespace MyCalculatorWCFService
{
  [ServiceContract()]
  Public interface ISimpleCalculator
  {
     [OperationContract()]
     int Add(int num1, int num2);
  }
}

گام پنجم –MyCalculatorService کلاسی است که رابط IMyCalculatorService را مانند زیر پیاده سازی می کند.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MyCalculatorWCFService
{
  Class SimpleCalculator : ISimpleCalculator
  {
     Public int Add(int num1, int num2)
     {
        return num1 + num2;
     }
  }
}

گام ششم –اکنون سرویس آماده است. کافی است فرایند میزبانی را پیاده سازی کنیم. یک اپلیکیشن console جدید ایجاد کرده و آن را 'MyCalculatorWCFServiceHost' نام گذاری کنید.

گام هفتم –حال ارجاع (reference) system.servicemodel و پروژه ی MyCalculatorWCFService را اضافه کنید.

آموزش WCF

Code behind مربوطه به شرح زیر می باشد:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MyCalculatorWCFService;
using System.ServiceModel;
using System.ServiceModel.Description;
namespace MyCalculatorWCFServiceHost
{
  class Program
  {
     static void Main(string[] args)
     {
        //Create a URI to serve as the base address
        UrihttpUrl = newUri("http://localhost:8090/MyCalculatorWCFService/SimpleCalculator");
        //Create ServiceHost
        ServiceHost host = newServiceHost(typeof(MyCalculatorWCFService.ISimpleCalculator), httpUrl);
        //Add a service endpoint
        host.AddServiceEndpoint(typeof(MyCalculatorWCFService.ISimpleCal culator), newWSHttpBinding(), "");
        //Enable metadata exchange
        ServiceMetadataBehaviorsmb = newServiceMetadataBehavior();
        smb.HttpGetEnabled = true;
        host.Description.Behaviors.Add(smb);
        //Start the Service
        host.Open();
        Console.WriteLine("Service is host at " + DateTime.Now.ToString());
        Console.WriteLine("Host is running... Press key to stop");
        Console.ReadLine();
     }
  }
}
1395/05/12 2252 4
نظرات شما

نظرات خود را ثبت کنید...