我在.NET 4应用程序上托管了一组WCF服务。我手动创建ServiceHost类并开始侦听TCP端口。 所有工作都按预期工作,但在服务器端的WCF跟踪中,我收到以下警告。
找不到配置评估上下文。
XML跟踪如下:
<E2ETraceEvent xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent">
<System xmlns="http://schemas.microsoft.com/2004/06/windows/eventlog/system">
<EventID>524312</EventID>
<Type>3</Type>
<SubType Name="Warning">0</SubType>
<Level>4</Level>
<TimeCreated SystemTime="2010-09-03T12:33:01.9404010Z" />
<Source Name="System.ServiceModel" />
<Correlation ActivityID="{00000000-0000-0000-0000-000000000000}" />
<Execution ProcessName="Server.Console.vshost" ProcessID="24612" ThreadID="10" />
<Channel />
<Computer>BAROLO</Computer>
</System>
<ApplicationData>
<TraceData>
<DataItem>
<TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Warning">
<TraceIdentifier>http://msdn.microsoft.com/it-IT/library/System.ServiceModel.EvaluationContextNotFound.aspx</TraceIdentifier>
<Description>Configuration evaluation context not found.</Description>
<AppDomain>Server.Console.vshost.exe</AppDomain>
</TraceRecord>
</DataItem>
</TraceData>
</ApplicationData>
</E2ETraceEvent>
有关警告原因的任何想法吗?
由于
答案 0 :(得分:3)
您是否看过该MSDN博客:Missing Binding Extensions?
未找到评估上下文错误(或带有标识符System.ServiceModel.EvaluationContextNotFound的跟踪)通常是通过使用未在应用程序配置中包含的库中定义的配置元素作为扩展名引起的。
答案 1 :(得分:0)
我的经验是,您必须使用服务名称和标记下的其他详细信息手动创建服务。
e.g。
<system.serviceModel>
<services>
<service name="WCF_NameSpace.Service1" behaviorConfiguration="behave">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="bind" contract="WCF_Trace_2.IService1"></endpoint>
</service>
</services>