日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
百寶箱教你解決WCF自宿主問題

經(jīng)過長時(shí)間學(xué)習(xí)WCF,對WCF也有一定程度上的認(rèn)識(shí)了解,這里就發(fā)表下我的言論吧。WCF自宿主是當(dāng)開發(fā)者負(fù)責(zé)提供和管理宿主進(jìn)程的生命周期時(shí)使用的技術(shù)名詞。自宿主被應(yīng)用在位于客戶端和服務(wù)之間的一個(gè)進(jìn)程(或計(jì)算機(jī))邊界環(huán)境中,以及當(dāng)使用進(jìn)程中服務(wù)的情況下(也就是說,與客戶端處于相同的進(jìn)程中)。

專注于為中小企業(yè)提供網(wǎng)站制作、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)龍海免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

#T#你需要提供的進(jìn)程可能是任何Windows進(jìn)程,例如,一個(gè)Windows表單應(yīng)用程序,一個(gè)控制臺(tái)應(yīng)用程序或一個(gè)Windows NT服務(wù)。注意,該進(jìn)程必須在客戶端調(diào)用服務(wù)之前先運(yùn)行起來;典型情況下,這意味著,你必須預(yù)先啟動(dòng)它。對于NT進(jìn)程中服務(wù)來說這并不是一個(gè)問題。類似于IIS宿主,WCF自宿主應(yīng)用程序配置文件必須列出你想宿主的服務(wù)的類型并且暴露給外界。而且,該宿主進(jìn)程必須在運(yùn)行時(shí)刻顯式地注冊服務(wù)類型并且打開該宿主以便于客戶端調(diào)用。典型地,這是在Main()方法中使用如下定義的助理類ServiceHost實(shí)現(xiàn)的:

 
 
  1. public interface ICommunicationObject : IDisposable  
  2. {  
  3. void Open();  
  4. void Close();  
  5. //更多成員  
  6. }  
  7. public abstract class CommunicationObject :  
  8. ICommunicationObject  
  9. {...}  
  10. public class ServiceHostBase : CommunicationObject,...  
  11. {...}  
  12. public class ServiceHost : ServiceHostBase,...  
  13. {  
  14. public ServiceHost(Type serviceType,  
  15. params Uri[]baseAddresses);  
  16. //更多成員  

提供給ServiceHost的構(gòu)造函數(shù)的信息有:服務(wù)類型和(可選)默認(rèn)的基地址。該基地址集可以是一個(gè)空集(以后,你可以配置不同的基地址)。擁有一組基地址能夠使服務(wù)接受在多個(gè)地址和協(xié)議上的調(diào)用。注意,每個(gè)ServiceHost實(shí)例都關(guān)聯(lián)與一個(gè)特定的服務(wù)類型,并且如果宿主進(jìn)程需要宿主多個(gè)類型的服務(wù)的話,你需要一些匹配的ServiceHost實(shí)例。通過調(diào)用宿主中的ServiceHost.Open()方法,你允許調(diào)入(call- in);并且通過調(diào)用ServiceHost.Close()方法,你可以體面地退出宿主實(shí)例并完成到當(dāng)前客戶端的數(shù)據(jù)發(fā)送,并且還要拒絕未來的客戶端調(diào)用-即使宿主進(jìn)程仍在運(yùn)行中。典型地,關(guān)閉操作是在WCF自宿主進(jìn)程關(guān)閉時(shí)實(shí)現(xiàn)的。例如,為了把這個(gè)服務(wù)宿主在一個(gè)Windows表單應(yīng)用程序中:

 
 
  1. [ServiceContract]  
  2. interface IMyContract  
  3. {...}  
  4. class MyService : IMyContract  
  5. {...}  
  6. 你可以編寫:  
  7. public static void Main()  
  8. {  
  9. Uri baseAddress = new Uri("http://localhost:8000/");  
  10. ServiceHost serviceHost;  
  11. serviceHost = new ServiceHost(typeof(MyService),baseAddress);  
  12. serviceHost.Open();  
  13. //能夠攔截調(diào)用:  
  14. Application.Run(new MyForm());  
  15. serviceHost.Close();  
  16. }  

標(biāo)題名稱:百寶箱教你解決WCF自宿主問題
文章來源:http://www.5511xx.com/article/dhohojg.html