WCF Bug解決方案詳解
在WCF開發(fā)插件的使用過程中,往往會(huì)因?yàn)橐恍┘?xì)節(jié)問題產(chǎn)生了不少的WCF Bug,那么如何才能正確的解決這些Bug呢?我們將會(huì)在這里通過一個(gè)特殊的Bug處理來為大家講解一下具體的解決方法。
最近在學(xué)習(xí)WCF技術(shù),在學(xué)習(xí)到WCF拓展時(shí),發(fā)現(xiàn)一個(gè)奇怪的WCF Bug。
就是在使用自定義拓展元素時(shí),如果按照下面的方式在配置文件注冊(cè)拓展元素(配置文件手寫):
- < add name="ContextPropagationExtension"
- type="HXW.WCF.Extension.ContextPropagationBehaviorElement,
HXW.WCF.Extension, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=null" />
程序運(yùn)行時(shí)會(huì)拋出一個(gè)WCF Bug的異常:#t#
未處理 System.Configuration.ConfigurationErrorsException
Message="創(chuàng)建 system.serviceModel/behaviors 的配置節(jié)處理程序時(shí)出錯(cuò): 無法將擴(kuò)展元素“ContextPropagationExtension”添加到此元素中。請(qǐng)驗(yàn)證該擴(kuò)展是否已在system.serviceModel/extensions/behaviorExtensions 中的擴(kuò)展集合中注冊(cè)。\r\n參數(shù)名: element (F:\\hxw\\wcf\\HXW.WCF\\HXW.WCF.Host\\bin\\Debug\\HXW.WCF.Host.vshost.exe.Config line 10)"
研究了兩天都解決不了。
***google了才發(fā)現(xiàn)是微軟的BUG。具體看下面的鏈接:
https://connect.microsoft.com/wcf/feedback/ViewFeedback.aspx?FeedbackID=216431
WCF Bug的具體解決方式如下:
把上面那段配置改為:
- < add name="ContextPropagationExtension"
- type="HXW.WCF.Extension.ContextPropagationBehaviorElement,
HXW.WCF.Extension, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
(就是在,后面加上一個(gè)空格)
就正常了。所以大家手寫配置文件一定要注意,以免造成WCF Bug。