بخش های یک EndPoint

بخش های یک EndPoint

 بسم الله الرحمن الرحیم

آموزش WCF

End Point

سرویس WCF یک برنامه است که یک مجموعه از End Point را ارائه می دهد. هر End Point یک پرتال است که ارتباط را با دنیا را برقرار می کند.

همه ارتباطات WCF از طریق بستر End Point ایجاد می شود. End point شامل سه بخش می باشد.

Address

درواقعURL ، جایی که این سرویس WCF هاست شده است را مشخص می کند. کلاینت از این آدرس جهت برقراری ارتباط با سرویس استفاده خواهد کرد. مثال:

http://localhost:8090/MyService/SimpleCalculator.svc

Binding

توصیف می کند که کلاینت چطور با این سرویس ارتباط برقرار خواهد کرد. پروتکل های متفاوتی برای برقرار کردن ارتباط با کلانیت وجود دارد. شما میتوانید ذکر کنید پروتکل خود را بر اساس نیازی که دارید.

 بسم الله الرحمن الرحیم

آموزش WCF

End Point

سرویس WCF یک برنامه است که یک مجموعه از End Point را ارائه می دهد. هر End Point یک پرتال است که ارتباط را با دنیا را برقرار می کند.

همه ارتباطات WCF از طریق بستر End Point ایجاد می شود. End point شامل سه بخش می باشد.

Address

درواقعURL ، جایی که این سرویس WCF هاست شده است را مشخص می کند. کلاینت از این آدرس جهت برقراری ارتباط با سرویس استفاده خواهد کرد. مثال:

http://localhost:8090/MyService/SimpleCalculator.svc

Binding

توصیف می کند که کلاینت چطور با این سرویس ارتباط برقرار خواهد کرد. پروتکل های متفاوتی برای برقرار کردن ارتباط با کلانیت وجود دارد. شما میتوانید ذکر کنید پروتکل خود را بر اساس نیازی که دارید.

یک Binding  چند خصوصیت دارد. از جمله موارد زیر:

1-    Transport، پروتکل اصلی که باید مورد استفاده قرار گیرد مثل HTTP, Named Pipes, TCP, and MSMQ را مشخص می کند

2-    Encoding، (اختیاری) سه نوع از Encoding وجود Message Transmission Optimization Mechanism (MTOM) و Text, Binary. MTOM یک فرمت پیام سازگار که اجازه می دهد به طور کارا پیغام های بزرگ یا پیوست ها را انتقال دهید (بزرگتر از 64K).

3-    Protocol، (اختیاری) اطلاعاتی که در Binding استفاده می شود را از قبیل امنیت، تراکنش، قابلیت های پیغام های قابل اعتماد را مشخص می کند

Binding

Description

BasicHttpBinding

Basic Web service communication. No security by default

WSHttpBinding

Web services with WS-* support. Supports transactions

WSDualHttpBinding

Web services with duplex contract and transaction support

WSFederationHttpBinding

Web services with federated security. Supports transactions

MsmqIntegrationBinding

Communication directly with MSMQ applications. Supports transactions

NetMsmqBinding

Communication between WCF applications by using queuing. Supports transactions

NetNamedPipeBinding

Communication between WCF applications on same computer. Supports duplex contracts and transactions

NetPeerTcpBinding

Communication between computers across peer-to-peer services. Supports duplex contracts

NetTcpBinding

Communication between WCF applications across computers. Supports duplex contracts and transactions

 

Contract

مجموعه ای از عملیات هایی که مشخص می کند چه Endpoint هایی با دنیای خارج ارتباط برقرار خواهند کرد

معمولا باید نامی از Interface در Contract ذکر شود، بنابراین باید برنامه های تحت کلاینت از عملیات ها یا همان Operation هایی که در

کلاینت ارائه می شوند مطلع باشند. هر Operation یک الگوی تبادلی ساده از قبیل one-way, duplex and request/reply می باشد:

تصویر زیر فرایند EndPoint را نمایش می دهد:

 

EndPoint 

 

EndPoint ها باید ذکر می کردند در فایل Web.Config سرویس ساخته شده

 


<system.serviceModel>
<services>
      <service name="MathService"
        behaviorConfiguration="MathServiceBehavior">
       <endpoint
         address="http://localhost:8090/MyService/MathService.svc" contract="IMathService"
          binding="wsHttpBinding"/>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="MathServiceBehavior">
          <serviceMetadata httpGetEnabled="True"/>
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel> 

نظرات

  • Hannah Martinez
    AR
    دو شنبه 11 دی 1278 - 0:00

    منظورش از Metadata Endpoints چیه ؟

  • Hannah Martinez
    AR
    دو شنبه 11 دی 1278 - 0:00

    سلام آقایی شیدایی وقت شما بخیر

    میشه این خط را تو ضیح بدید ممنون

    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>

نظرات یا سوالات خودرا با ما درمیان بگذارید

0912 097 5516 :شماره تماس
0713 625 1757 :شماره تماس