2009-12-30 62 views
2

當我將服務引用添加到我的網站時,出現以下運行時錯誤。添加服務引用到網站時出錯

的最大消息大小配額 傳入消息(65536)一直 超出。要增加配額,請使用 MaxReceivedMessageSize屬性 上適當的綁定元素。

傳遞消息時不應該有限制。那麼,我怎樣才能給出最大的消息大小?笏是我能給的最大尺寸?

以下是代碼:

<httpTransport manualAddressing="false" maxBufferPoolSize="524288" 
     maxReceivedMessageSize="65536" allowCookies="false" authenticationScheme="Anonymous" 
     bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" 
     keepAliveEnabled="true" maxBufferSize="65536" proxyAuthenticationScheme="Anonymous" 
     realm="" transferMode="Buffered" unsafeConnectionNtlmAuthentication="false" 
     useDefaultWebProxy="true" /> 

回答

1

我認爲它不是一個好主意,用最大緩衝區和郵件大小爲轉移,因爲你總是可以侵佔他們,如果你的郵件大小是不固定的。我建議您將消息大小修復爲4K或8K之類的數據,並以塊的形式發送數據(如果您有大量要傳輸的數據需要連續傳輸數據)。如果您的消息有多行,從200到500個字符不等,那麼您可以修復一次要傳輸的數據行數。

一個這樣的例子可以是每秒處理數千個連接的Windows服務和顯示服務處理的每個消息的狀態的Monitor應用程序。

+0

我試過..沒有用..相同的錯誤 – Nila 2009-12-30 06:48:01

+0

你試了什麼?你目前的郵件大小是什麼?請確保你使用的是正確的綁定。 – A9S6 2009-12-30 06:59:37

+0

「這個工廠緩衝消息的,所以消息的大小必須是一個整數值的範圍 參數名稱:。bindingElement.MaxReceivedMessageSize」 這是當我給最大大小參數 MAXBUFFERSIZE =發生錯誤‘999999999’maxBufferPoolSize =‘524288’maxReceivedMessageSize = 「9223372036854775807」 – Nila 2009-12-30 07:06:22

1

增加maxBufferSize="65536"maxReceivedMessageSize="65536",讓您最長的消息。

有趣的是:Addressing MaxReceivedMessageSize issues

+0

已經只添加了該值。 ?? !! – Nila 2009-12-30 06:19:03

+1

不,只需將您的消息和緩衝區大小修改爲您所期望的任何內容即可。消息大小限制爲Int64.MaxValue或9,223,372,036,854,775,807。通常,如果您要抽取大量數據,則需要考慮以塊爲單位進行流式傳輸。 – 2009-12-30 06:22:52

+0

增加了最大尺寸。然後,它也顯示相同的錯誤:-( – Nila 2009-12-30 06:35:11

0

我不能給最大尺寸。我能夠提供尺寸819222.它現在正在爲我工​​作..

相關問題