我有一个WCF服务,它可以在localhost上运行,但是当发布到IIS服务器时,我再也无法访问它的方法了,错误消息是
“此程序集不允许部分受信任的呼叫者”
然后,我将以下内容添加到Web.config文件中:
<trust level="Full" originUrl=""/>
现在,我收到此错误消息:
无法从http://wheremyserviceispublished.net/Service.svc获取元数据 如果这是您要使用的Windows(R)Communication Foundation服务 有权访问,请检查是否已在以下位置启用了元数据发布 指定的地址。
有人知道如何解决这些问题吗?
答案 0 :(得分:0)
如果您在IIS中发布wcf服务,则默认配置已公开了元数据信息。
<!-- To avoid disclosing metadata information, set the values below to false before deployment -->
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
您还可以在httpGetUrl属性中分配元数据地址。 如果要在端点配置上公开元数据信息。尝试遵循这个。
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"></endpoint>
<behaviors>
<serviceBehaviors>
<behavior name="svbehavior">
<serviceMetadata />
</behavior>
</serviceBehaviors>
然后在终端上应用该行为,以使其生效。
<service name="WcfService4.Service1" behaviorConfiguration="svbehavior">
如果问题仍然存在,请随时与我联系。