应用程序中的服务器错误 - 尝试访问WCF服务时

时间:2011-03-29 18:33:47

标签: wcf iis-7 wcf-hosting

我有一个WCF服务,我想在IIS 7.5中托管。我的设置: .svc文件的文件夹的物理路径是:C:\ inetpub \ wwwroot \ SmartSolution \ Services \ Services \ ContainerManagementService.svc 我的二进制文件位于C:\ inetpub \ wwwroot \ SmartSolution \ Services \ bin中,我也将它们复制到 C:\的Inetpub \ wwwroot的\ SmartSolution \服务\服务\ BIN

我在IIS中为两个Services文件夹创建了一个Web应用程序。

以下是WCF端点的配置文件:

      <service behaviorConfiguration="MyNamespace.ContainerManagementServiceBehavior"
    name="MyNamespace.ContainerManagementService">
    <endpoint address="" binding="basicHttpBinding"
       name="ContainerManagementbasicHttpEndpoint" contract="MyNamespace.IContainer"/>                  
    <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
  </service>      
   <behaviors>      
    <behavior name="MyNamespace.ContainerManagementServiceBehavior">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="false" />
    </behavior>
</behaviors>

这是我的.svc文件makrkup:

<%@ ServiceHost Language="C#" Debug="true" Service="MyNamespace.ContainerManagementService" CodeBehind="ContainerManagementService.svc.cs" %>

当我尝试导航到:http://localhost/SmartSolution/Services/Services/ContainerManagementService.svc时,会显示以下错误:

  

服务器错误   '/ SMARTSOLUTION /服务/服务'   应用。   [ServiceActivationException:The   服务   '/SMARTSOLUTION/Services/Services/ContainerManagementService.svc'   由于a无法激活   编译期间的异常。该   异常消息是:不是有效的   Win32应用程序。 (例外   HRESULT:0x800700C1)。]无效   Win32应用程序。 (例外   HRESULT:0x800700C1)

如何让服务正常运行。谢谢!

1 个答案:

答案 0 :(得分:4)

查看异常,似乎您的程序集(在bin文件夹中)是针对x64 Plaform构建的,它们现在要么部署在32位计算机上,要么应用程序池配置为应用程序在32位模式下运行(启用32位应用程序= “真正”)。因此,进程无法加载为x64平台构建的程序集,并且异常失败。

HTH 阿米特