作為微軟技術.net 3.5的三大核心技術之一的WCF雖然沒有WPF美麗的外觀

作為微軟技術.net 3.5的三大核心技術之一的WCF雖然沒有WPF美麗的外觀 但是它卻是我們開發分布式程序的利器 但是目前關于WCF方面的資料相當稀少 希望我的這一系列文章可以幫助大家盡快入門 下面先介紹一下我的開發環境吧 操作系統:windows vista business版本 編譯器:Visual Studio 2008(英文專業版) WCF的三大核心是ABC 也就是A代表Address-where(對象在哪里) B代表Binding-how(通過什么協議取得對象) C代表Contact(契約)-what(定義的對象是什么,如何操縱) 其他的理論知識大家可以參見《Programming WCF Service》 或者今年3月份剛剛出版的《Essential Windows Commmunication Foundation》 現在用In Action的方式來手把手教大家創建第一個WCF程序 首先如下圖所示創建一個空的解決方案 接下來右鍵點擊解決方案HelloWCF選擇Add->New Project并選擇Console Application模板并選擇名為項目名為Host(服務器端) 接下來右鍵點擊Host項目選擇Add->New Item并選擇Webservice模板(文件命名為HelloWCFService) 將創建三個文件IHelloWCFService.cs,HelloWCFService.cs以及App.config文件 IHelloWCFService.cs代碼如下 using System.ServiceModel; namespace Host { [ServiceContract] public interface IHelloWCFService { [OperationContract] string HelloWCF(string message); } } 而HelloWCFService.cs代碼實現如下 using System; namespace Host { public class HelloWCFService : IHelloWCFService { public string HelloWCF(string message) { return string.Format("你在{0}收到信息:{1}",DateTime.Now,message); } } } App.config文件原則上可以不用改,但是address太長了 (默認的為baseAddress=http://localhost:8731/Design_Time_Addresses/Host/HelloWCFService/) 縮短為baseAddress=http://localhost:8731/HelloWCFService/ 并修改Program.cs文件為 using System; using System.ServiceModel; namespace Host { class Program { static void Main(string[] args) { using(ServiceHost host=new ServiceHost(typeof(Host.HelloWCFService))) { host.Open(); Console.ReadLine(); host.Close(); } } } } 編譯并生成Host.exe文件 接下來創建客戶端程序為Console Application項目Client 啟動Host.exe文件 右鍵點擊Client項目并選擇Add Service Reference... 并且在Address的TextBox里面輸入服務器的地址(就是咱們前面設置的baseaddress地址),并點擊Go 將得到目標服務器上面的Services,如下圖所示 這一步見在客戶端間接借助SvcUtil.exe文件創建客戶端代理(using Client.HelloWCF;)以及配置文件app.config 修改客戶端的程序如下 using System; using Client.HelloWCF; namespace Client { class Program { static void Main(string[] args) { HelloWCF.HelloWCFServiceClient proxy=new HelloWCFServiceClient(); string str = proxy.HelloWCF("歡迎來到WCF村!"); Console.WriteLine(str); Console.ReadLine(); } } } 就可以獲取得到服務器的對象了

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/388934.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/388934.shtml
英文地址,請注明出處:http://en.pswp.cn/news/388934.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

服務器安裝mysql_阿里云服務器上安裝MySQL

關閉防火墻和selinuxCentOS7以下:service iptables stopsetenforce 0CentOS7.xsystemctl stop firewalldsystemctl disable firewalldsystemctl status firewalldvi /etc/selinux/config把SELINUXenforcing 改成 SELINUXdisabled一、安裝依賴庫yum -y install make …

在PyTorch中轉換數據

In continuation of my previous post ,we will keep on deep diving into basic fundamentals of PyTorch. In this post we will discuss about ways to transform data in PyTorch.延續我以前的 發布后 ,我們將繼續深入研究PyTorch的基本原理。 在這篇文章中&a…

「網絡流24題」試題庫問題

傳送門&#xff1a;>Here< 題意&#xff1a;有K種類型的共N道試題用來出卷子&#xff0c;要求卷子須有M道試題。已知每道題屬于p種類型&#xff0c;每種類型的試題必須有且僅有k[i]道。現問出這套試卷的一種具體方案 思路分析 昨天打了一天的Dinic&#xff0c;今天又打了…

機器學習實踐六---K-means聚類算法 和 主成分分析(PCA)

在這次練習中將實現K-means 聚類算法并應用它壓縮圖片&#xff0c;第二部分&#xff0c;將使用主成分分析算法去找到一個臉部圖片的低維描述。 K-means Clustering Implementing K-means K-means算法是一種自動將相似的數據樣本聚在一起的方法,K-means背后的直觀是一個迭代過…

航海家軟件公式全破解

水手突破 上趨勢:MA(LOW,20)*1.2,color0080ff,linethick2;次上趨勢:MA(LOW,20)*1.1,COLORYELLOW;次下趨勢:MA(HIGH,20)*0.9,COLORWHITE;下趨勢:MA(HIGH,20)*0.8,COLORGREEN,linethick2;ZD:(C-REF(C,1))/REF(C,1)*100;HDZF:(HHV(H,20)-C)/(HHV(H,20)-LLV(L,20));趨勢強度:IF(C&g…

打包 壓縮 命令tar zip

2019獨角獸企業重金招聘Python工程師標準>>> 打包 壓縮 命令tar zip tar語法 #壓縮 tar -czvf ***.tar.gz tar -cjvf ***.tar.bz2 #解壓縮 tar -xzvf ***.tar.gz tar -xjvf ***.tar.bz2 tar [主選項輔選項] 文件或目錄 主選項是必須要有的&#xff0c;它告訴tar要做…

mysql免安裝5.7.17_mysql免安裝5.7.17數據庫配置

首先要有 mysql-5.7.10-winx64環境: mysql-5.7.10-winx64 win10(64位)配置環境變量&#xff1a;1、把mysql-5.7.10-winx64放到D盤&#xff0c;進入D\mysql-5.7.10-winx64\bin目錄&#xff0c;復制路徑&#xff0c;配置環境變量&#xff0c;在path后面添加D\mysql-5.7.10-winx6…

tidb數據庫_異構數據庫復制到TiDB

tidb數據庫This article is based on a talk given by Tianshuang Qin at TiDB DevCon 2020.本文基于Tianshuang Qin在 TiDB DevCon 2020 上的演講 。 When we convert from a standalone system to a distributed one, one of the challenges is migrating the database. We’…

機器學習實踐七----異常檢測和推薦系統

Anomaly detection 異常檢測是機器學習中比較常見的應用&#xff0c;它主要用于非監督學習問題&#xff0c;從某些角度看&#xff0c; 它又類似于一些監督學習問題。 什么是異常檢測&#xff1f;來看幾個例子&#xff1a; 例1. 假設是飛機引擎制造商&#xff0c; 要對引擎進行…

CODE[VS] 1621 混合牛奶 USACO

題目描述 Description牛奶包裝是一個如此低利潤的生意,所以盡可能低的控制初級產品(牛奶)的價格變的十分重要.請幫助快樂的牛奶制造者(Merry Milk Makers)以可能的最廉價的方式取得他們所需的牛奶.快樂的牛奶制造公司從一些農民那購買牛奶,每個農民賣給牛奶制造公司的價格不一定…

apply和call用法

apply語法 func.apply(name, [array])第一個參數指定函數體內this對象的指向&#xff0e;第二個參數為一個帶下標的集合&#xff0c;可以是數組或類數組,apply方法把這個集合中的元素作為參數傳遞給被調用的函數var func function(a, b, c) {console.log([a, b, c]); // [1,2,…

剛認識女孩說不要浪費時間_不要浪費時間尋找學習數據科學的最佳方法

剛認識女孩說不要浪費時間重點 (Top highlight)Data science train is moving, at a constantly accelerating speed, and increasing its length by adding up new coaches. Businesses want to be on the data science train to keep up with the ever-evolving technology a…

測試工具之badboy

badboy這個工具本身用處不是很大&#xff0c;但有個錄制腳本的功能&#xff0c;還是jmeter腳本&#xff0c;所以針對這一點很多懶人就可以通過這個錄制腳本&#xff0c;而不需要自己去編寫 badboy工具最近還是2016年更新的&#xff0c;后面也沒在更新了&#xff0c;官方下載地址…

hive 集成sentry

2019獨角獸企業重金招聘Python工程師標準>>> 環境 apache-hive-2.3.3-bin apache-sentry-2.1.0-bin 1 2 sentry是目前最新的版本&#xff0c;支持hive的最高版本為2.3.3&#xff0c;hive版本如果高于2.3.3&#xff0c;會出一些版本兼容問題[親測] hive快速安裝 wget…

word模板生成word報表文檔

主要功能為根據word模板生成word報表文檔,注意引用Interop.Word.dll;首先要生成word程序對象Word.Application app new Word.Application();根據模板文件生成新文件框架File.Copy(TemplateFile, FileName);生成documnet對象ord.Document doc new Word.Document(); 打開…

isql 測試mysql連接_[libco] 協程庫學習,測試連接 mysql

歷史原因&#xff0c;一直使用 libev 作為服務底層&#xff1b;異步框架雖然性能比較高&#xff0c;但新人學習和使用門檻非常高&#xff0c;而且串行的邏輯被打散為狀態機&#xff0c;這也會嚴重影響生產效率。用同步方式實現異步功能&#xff0c;既保證了異步性能優勢&#x…

什么是數據倉庫,何時以及為什么要考慮一個

The term “Data Warehouse” is widely used in the data analytics world, however, it’s quite common for people who are new with data analytics to ask the above question.術語“數據倉庫”在數據分析領域中被廣泛使用&#xff0c;但是&#xff0c;對于數據分析新手來…

安裝好MongoDB,但服務中沒有MongoDB服務的解決辦法

以管理員身份打開CMD&#xff0c;添加路徑添加服務即可 winX 然后再選Amongod -dbpath "D:\MongoDB\Server\3.6\data\db" -logpath "D:\MongoDB\Server\3.6\data\log\mongo.log" -install -serviceName "MongoDB"轉載于:https://www.cnblogs.com…

DRF數據驗證+數據存儲

1.驗證數據的自定義類 class BooksDRFt(serializers.ModelSerializer):class Meta:model Bookfields __all__#要驗證的字段author serializers.CharField(requiredFalse)#要驗證的字段name serializers.CharField(min_length2, error_messages{required: 不能為空, min_len…

mysql變量 exec_MySQL slave_exec_mode 參數說明

背景&#xff1a;今天無意當中看到參數slave_exec_mode&#xff0c;從手冊里的說明看出該參數和MySQL復制相關&#xff0c;是可以動態修改的變量&#xff0c;默認是STRICT模式(嚴格模式)&#xff0c;可選值有IDEMPOTENT模式(冪等模式)。設置成IDEMPOTENT模式可以讓從庫避免1032…