2012-07-18 15 views
1

我們正在使用WCF服務來獲取操作。我知道,如何使用svutil.exe工具以編程方式生成WCF服務的元數據。我不知道如何使用SLsvcutil.exe工具。 我需要以編程方式在C#中通過slsvcutil.exe創建自動生成的代碼。如何在不使用SLsvcutil.exe工具的情況下以編程方式動態創建自動生成的代碼?

Plz任何機構都知道這一點?

+0

帶或不帶SLsvcutil?你似乎自相矛盾。 – 2012-07-18 07:49:57

+0

因爲它是關於SL,什麼信任級別可用? – 2012-07-18 07:56:25

+0

沒有slsvcutil,但以編程方式。無需打開slsvcutil工具,通過C#.NET創建代碼。 – 2012-07-18 09:10:40

回答

2

最後,我得到的輸出是使用Silverlight服務模型代理生成工具(SLsvcUtil.exe)從服務元數據文檔中動態生成Silverlight客戶端代理,或者只使用C#代碼而不打開並在該工具上鍵入命令。

這裏是slsvcutil.exe簡單的C#.NET源代碼:

 string arguments = string.Empty; 
     string SvcUtilPath = string.Empty; 

     SvcUtilPath = @"C:\Program Files\Microsoft SDKs\Silverlight\v5.0\Tools\SlSvcUtil.exe"; 

     arguments += @"http://localhost:3628/WCFservices/CompilerHelper.svc?wsdl "; 
     arguments += @"/out:C:\Clients_FIles\ClientProxy.cs "; 
     arguments += @"/edb /namespace:*,ClientProxy "; 
     arguments += @"/ct:System.Collections.ObjectModel.ObservableCollection`1 "; 
     arguments += @"/r:""C:\Program Files\Microsoft Silverlight\5.1.10411.0\System.Windows.dll"" "; 

     Process process_ = new Process(); 
     process_.StartInfo.FileName = SvcUtilPath; 
     process_.StartInfo.Arguments = arguments; 
     process_.StartInfo.ErrorDialog = true; 
     process_.StartInfo.UseShellExecute = false; 
     process_.Start(); 
     process_.WaitForExit(); 

使用System.Disagnostics.Process命名空間,我們可以調用slsvcutil.exe文件並運行參數產生的Silverlight的服務模式碼任何(WCF)服務文件。

感謝, PRABAKARAN G.

相關問題