我有一个与 WCF 服务通信的 Silverlight 应用程序。作为 web.config 文件的一部分,有一个使用 WCF 的必需部分:
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true"
multipleSiteBindingsEnabled="true" />
</system.serviceModel>
部署到 Windows 2008 服务器后,启动 Silverlight 应用程序时出现以下错误:
Parser Error Message: It is an error to use a section registered as
allowDefinition='MachineToApplication' beyond application level. This error can be
caused by a virtual directory not being configured as an application in IIS.
Source Error:
Line 29:
Line 30: <system.serviceModel>
Line 31: <serviceHostingEnvironment aspNetCompatibilityEnabled="true"
Line 32: multipleSiteBindingsEnabled="true" />
Line 33: </system.serviceModel>
经过一些研究,有几个项目可能会导致这种情况:
- 应用程序所在的目录未设置为 IIS 中的应用程序
- 多个 web.config 文件存在于应用程序结构下的一个或多个子目录中。
这些情况都不适用于我的情况。我的应用程序设置为 IIS 下的应用程序,应用程序结构中只有一个web.config 文件。
出现此消息的任何其他原因?如果我在应用程序的 web.config 文件中明确定义身份验证类型,也会发生这种情况。
谢谢你的帮助。