共用方式為


將服務參考加入至可攜式子集專案

可攜子集專案能讓 .NET 組件程式設計師維護單一來源的樹狀目錄與建置系統,同時仍支援多個 .NET 實作 (桌上型電腦、Silverlight、Windows Phone 和 Xbox)。 可攜子集專案唯一參考的 .NET 可攜程式庫為適用於任何 .NET 實作的組件。

加入服務參考詳細資料

在可攜子集專案中新增服務參考時,會強制執行下列限制:

  • XmlSerializer 只能使用常值編碼。 SOAP 編碼會在匯出期間產生錯誤。

  • 對於使用 DataContractSerializer 案例的服務,會提供資料合約 Surrogate 以確保重複使用的型別只能來自可攜式子集。

  • 可攜式程式庫不支援需要依賴繫結程序的端點 (所有繫結程序,但是不包括 BasicHttpBinding、沒有異動流程的 WSHttpBinding、可靠工作階段或 MTOM 編碼和對等的自訂繫結程序),將會被忽略。

  • 在匯出之前,會刪除所有作業中全部訊息描述之訊息標頭。

  • 會從產生的用戶端 Proxy 程式碼中移除非可攜式屬性 DesignerCategoryAttributeSerializableAttributeTransactionFlowAttribute

  • 會從 ServiceContractAttributeOperationContractAttributeFaultContractAttribute 中移除非可攜式屬性 ProtectionLevel、SessionMode、IsInitiating 和 IsTerminating。

  • 所有服務作業都會產生為用戶端 Proxy 上的非同步作業。

  • 會將所產生且使用非可攜式型別的用戶端建構函式移除。

  • CookieContainer 執行個體會在產生的用戶端上公開。

  • 會在識別程式碼產生器組件及版本的檔案頂端插入註解:// This code was auto-generated by Microsoft.VisualStudio.Portable.AddServiceReference, version 1.0.0.0

  • 不支援 ISerializable 介面。

  • 不支援 Net.Tcp 和 PollingDuplex 繫結

  • 永遠使用 DataContractSerializer 處理錯誤。

  • 在可攜式子集專案中不支援 IsWrapped

另請參閱