WCF: 已超過傳入消息(65536)的最大消息大小配額。若要增加配額,請使用相應綁定元素上的 MaxReceivedMessageSize 屬性。


用WCF 自帶的客戶端測試的,然后報錯:

已超過傳入消息(65536)的最大消息大小配額。若要增加配額,請使用相應綁定元素上的 MaxReceivedMessageSize 屬性。

//---------------------------------------------------------------------------------------------------------------

解決方法:

在WCFTestClient里能看到一個ConfigFile,---》右鍵---在SvcConfigEditor里編輯,然后找到綁定的設置就可以了。

這個不能直接在WCFTestClient設置,雙擊打開的文件默認是只讀的。

然后修改一個較大的數字就可以了。


MaxReceivedMessageSize 屬性修改成int的最大值

 

1) 步驟一: 先設置WcfTestClient.exe 每次加載時,無須重新加載配置文件,如下圖,取消選擇。

2) 步驟二: 在WCFTestClient里能看到一個ConfigFile,---》右鍵---在SvcConfigEditor里編輯,如下圖

 

3) 步驟三: 在WCFTestClient里能看到一個ConfigFile,---》右鍵---在SvcConfigEditor里編輯,如下圖

 

 參考出處:

http://msdn.microsoft.com/zh-cn/library/bb552364.aspx

WCF 測試客戶端 (WcfTestClient.exe)

.NET Framework 4.5  
 
 

Windows Communication Foundation (WCF) 測試客戶端 (WcfTestClient.exe) 是一個 GUI 工具,使用該工具,用戶可以輸入測試參數、將該輸入提交給服務並查看服務發回的響應。 當與 WCF 服務主機結合時,它可以提供完美的服務測試體驗。

在以下位置可以找到 WCF 測試客戶端 (WcfTestClient.exe):C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\

以下各節討論了使用 WCF 測試客戶端簡化開發流程的最常見方案。

Visual Studio 內部

WCF 服務主機啟動 WCF 測試客戶端和一項服務

在創建新的 WCF 服務項目並按 F5 啟動調試器后,WCF 服務主機將開始承載項目中的服務。 然后 WCF 測試客戶端將會打開,並顯示在配置文件中定義的服務終結點列表。 可以測試參數和調用服務,並可以重復此過程以繼續測試和驗證服務。

WCF 服務主機啟動 WCF 測試客戶端和多項服務

也可以使用 WCF 測試客戶端來幫助調試包含多項服務的服務項目。 打開 WCF 測試客戶端時,它將自動循環訪問項目服務列表並打開這些服務進行測試。

Visual Studio 外部

您還可以在 Visual Studio 外部調用 WCF 測試客戶端 (WcfTestClient.exe),以測試 Internet 上的任意服務。 若要找到此工具,請轉到以下位置:

C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\

若要使用該工具,可以雙擊此文件名從該位置打開它,也可以從命令行啟動它。

WCF 測試客戶端將任意數目的 URI 作為命令行參數。 這些 URI 是可以測試的服務的 URI。

wcfTestClient.exe URI1 URI2 …

WCF 測試客戶端窗口打開后,單擊“文件”->“添加服務”,然后輸入要打開的服務的終結點地址。

可以將 WCF 測試客戶端用於一項或多項服務。

服務操作

WCF 測試客戶端主窗口的左窗格列出了所有可用的服務及其各自的終結點和操作。

雙擊某個操作后,可以在具有此操作名稱的新選項卡內的右窗格中查看其內容。

左窗格還列出了客戶端配置文件。 雙擊任何項可以在新選項卡式窗口內的右窗格中顯示文件的內容。

輸入測試參數

若要查看測試參數,請雙擊某個操作以在右側窗格中打開它。 默認情況下參數顯示在“已編排格式”視圖中,您可以為參數輸入任意值以測試服務。

若要查看消息的 XML,請單擊“XML”若要將它們發送給服務,請單擊 “調用”

對於 DataSet 參數,請單擊“編輯…”旁的“…”以在顯示 DataGrid 的新窗口中編輯它。 請注意“復制數據集”“粘貼數據集”按鈕。 如果第一次編輯時 DataSet 對象的架構未知,則 DataGrid 為空。 您必須將具有相同架構的 DataSet 對象粘貼到 DataGrid 中的當前對象。 (請注意,在粘貼操作之前需要從其他位置復制架構。)您還可以通過單擊“復制數據集”按鈕復制 Dataset 對象以供將來使用。

服務響應將出現在測試參數下面。

注意 注意

如果預期的返回值是字符串,則結果將顯示為帶引號的字符串,即使提供的輸入未包含在引號中,也是如此。

如果在創建服務約定時將特定操作指定為單向操作,則不會顯示服務響應。 消息一旦處於排隊等待發送狀態,則會彈出一個對話框,通知您已成功發送消息。

會話支持

使用服務操作的選項卡中的“啟動新的代理”復選框可以切換會話支持。 默認情況下清除此框。

如果清除該復選框,則輸入某個特定操作(或同一服務終結點中的另一個操作)的測試參數並多次單擊“調用”后,這些操作將共用一個代理且服務狀態在多個操作中保持。

如果選中“啟動新的代理”復選框,則每次單擊“調用”都會啟動一個新的代理,前面的會話方案終止,服務狀態重置。

編輯客戶端配置

WCF 測試客戶端主窗口的左窗格列出了客戶端配置文件。 雙擊任何項可以在右窗格中顯示文件的內容。

使用服務配置編輯器進行編輯

在左窗格中右擊“配置文件”,然后選擇上下文菜單“用 SvcConfigEditor 進行編輯”服務配置編輯器啟動並顯示客戶端配置內容。 可以編輯配置,然后將其保存在此工具中。

在服務配置編輯器中保存此文件后,WCF 測試客戶端將顯示一條警告消息,通知您該文件已在外部修改,並詢問您是否要重新加載它。

如果選擇“是”,“Client.dll.config”選項卡中的配置內容將反映出您在此編輯器中所做的更改。

如果選擇“否”,“Client.dll.config”選項卡中的配置內容將保持不變,且已更改的內容將自動保存到源文件中。

還原到默認配置

如果希望取消所有更改並還原到默認客戶端配置,請在左窗格中右擊“配置文件”,然后選擇上下文菜單“還原到默認配置”這時將加載默認配置值,並還原“Client.dll.config”選項卡中的內容。

驗證更改

在 WCF 測試客戶端中加載已保存的更改時,會對照 WCF 架構檢查配置的有效性。 如果發現錯誤,將顯示一個對話框來給出錯誤詳細信息。

在代理生成、二進制編譯或服務調用期間,支持編輯的菜單項(即“編輯…”、“還原…”等等)被禁用。 將更新后的配置加載到 WCF 測試客戶端時還將禁用服務調用。

使客戶端配置保持不變

“工具”->“選項”->“客戶端配置”選項卡中包含一個“在啟動服務時始終重新生成配置”選項,默認情況下,該選項處於啟用狀態。 該選項指定每次 WCF 測試客戶端加載服務時,都會基於最新的服務協定和服務 App.config 文件重新生成一個配置文件。

如果您已編輯了 WCF 服務的客戶端配置,且希望始終使用這一更新后的文件來調試您的服務,則可以取消選中“重新生成”選項。 這樣,即使更新服務並重新打開 WCF 測試客戶端,Client.dll.config 文件將是您先前更新過的配置文件,而不是基於已更新的服務重新生成的文件。

但是,您可能需要編輯此配置文件以使其與重新生成的代理一致。 如果由於更新了服務而導致重新生成的代理與配置文件不匹配,則調用該服務時將出錯。

注意事項 注意

如果您已修改了客戶端配置文件並選擇以后再使用它,則可以在以下位置找到此文件:

\Documents and Settings\[User Account]\My Documents\Test Client Projects。

任何存儲到客戶端配置文件的已更新的憑據信息都是由此文件夾的訪問控制列表 (ACL) 保護的。

添加、刪除和刷新服務

添加服務

單擊“文件”->“添加服務”將某個服務添加到 WCF 測試客戶端。 然后您需要鍵入要添加的服務的 URI(終結點地址)。 該服務的地址可以是 mex 地址,也可以是 WSDL 地址。

“最新的服務”子菜單中還可以找到最新添加的 10 個服務的終結點列表。 如果選擇其中一個終結點,指定的服務就會添加到 WCF 測試客戶端。

右擊服務樹的根目錄“我的服務項目”,然后選擇“添加服務”也可以獲得相同的結果。

在代理生成、二進制編譯或服務調用期間,支持添加服務的菜單項被禁用。 服務調用也被禁用。

移除服務

右擊要移除的服務的服務根目錄,然后選擇“刪除服務”即可從 WCF 測試客戶端中移除服務。

在代理生成、二進制編譯或服務調用期間,支持刪除服務的菜單項被禁用。 服務調用也被禁用。

刷新服務

如果在 WCF 測試客戶端運行期間對服務進行了更改,且您希望確保該服務的 WCF 測試客戶端實現是最新的,請右擊該服務的服務根目錄,然后選擇“刷新服務”請注意,刷新后服務狀態將重置。

在代理生成、二進制編譯或服務調用期間,支持刷新服務的菜單項被禁用。 服務調用也被禁用。

默認情況下,WCF 測試客戶端將生成的客戶端代碼和配置文件存儲在“%appdata%\Local\temp\Test Client Projects”文件夾中。 WCF 測試客戶端退出后,該文件夾隨即刪除。 如果在 WCF 測試客戶端中修改了某個配置文件,且禁用了“在啟動服務時始終重新生成配置”選項,則修改后的文件將復制到“My Documents\Test Client Projects Documents\Test Client Projects”下的“Cached Config”文件夾中,並使用一個映射(從元數據地址到文件名)XML 文件作為索引。

也可以在命令行啟動 WCF 測試客戶端,使用 /ProjectPath 開關指定一個希望用於存儲生成的文件的新路徑,或者使用 /RestoreProjectPath 開關還原默認位置。 語法如下所示:

wcfTestClient.exe /ProjectPath [desired location]

運行此命令並不會打開 WCF 測試客戶端, 而只會更改文件夾位置。 無論 WCF 測試客戶端運行與否,都可以運行此命令。 WCF 測試客戶端重新啟動時將應用新位置。 位置信息可以保存在注冊表中,也可以保存在“%appdata%\Local\temp\Test Client Projects”文件夾的 WcfTestClient.exe.option 文件中。

下面是 WCF 測試客戶端支持的功能的列表:

  • 服務調用:請求/響應和單向消息。

  • 綁定:Svcutil.exe 支持的所有綁定。

  • 控制會話。

  • 消息協定。

  • XML 序列化。

下面是 WCF 測試客戶端不支持的功能的列表:

關閉 WCF 測試客戶端

可以通過以下方式關閉 WCF 測試客戶端:

  • “文件”菜單上單擊“退出”或者,在 WCF 測試客戶端主窗口中單擊“關閉”此外,這兩個操作還關閉 WCF 服務自動主機,如果 WCF 測試客戶端是由 Visual Studio 啟動的,則還會停止 Visual Studio 調試過程。

  • 右擊通知區域中的“WCF 服務主機”圖標,然后單擊“退出”。這將關閉 WCF 服務自動主機和 WCF 測試客戶端並停止 Visual Studio 調試進程。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM