代码之家  ›  专栏  ›  技术社区  ›  ATL_DEV

指定的错误模块找不到ServiceStackHttpHandlerFactory

  •  1
  • ATL_DEV  · 技术社区  · 13 年前

    我在web.config中得到了一个“指定的模块错误”的红色歪歪扭扭,内容如下:

    <add path="*" name="ServiceStack.Factory" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack, Version=3.9.38.0, Culture=neutral, PublicKeyToken=null" verb="*" preCondition="integratedMode" resourceType="Unspecified" allowPathInfo="true" />
    <add path="*" type="ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory, ServiceStack, Version=3.9.38.0, Culture=neutral, PublicKeyToken=null" verb="*"/>
    

    仅供参考,我确保没有像类似帖子所建议的那样选择.NET框架3.5版本的客户端配置文件。

    当我选择Resharper提供的“修复模块资格”时,我仍然会在web.config中得到错误指示。

    我正在关注ServiceStack网站中提供的示例应用程序。我安装了ServiceStack的最新稳定版本,下面是我的package.config:

    <?xml version="1.0" encoding="utf-8"?>
    <packages>
      <package id="ServiceStack" version="3.9.38" targetFramework="net35" />
      <package id="ServiceStack.Common" version="3.9.38" targetFramework="net35" />
      <package id="ServiceStack.OrmLite.SqlServer" version="3.9.39" targetFramework="net35" />
      <package id="ServiceStack.Redis" version="3.9.38" targetFramework="net35" />
      <package id="ServiceStack.Text" version="3.9.38" targetFramework="net35" />
    </packages>
    

    当我运行应用程序时,我会收到一条友好的消息:

    配置错误

    Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. 
    
    Parser Error Message: Could not load type 'ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory' from assembly 'ServiceStack, Version=3.9.38.0, Culture=neutral, PublicKeyToken=null'.
    
    2 回复  |  直到 13 年前
        1
  •  3
  •   Rahul Vats    10 年前

    这出现在搜索“找不到ServiceStackHttpHandlerFactory”时。在我的例子中,Pluralsight和其他地方使用的例子是添加的默认处理程序 ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory ,适用于ServiceStack 3.9。升级到ServiceStack 4.5.0,工厂 ServiceStack.HttpHandlerFactory 。例如:

    <add path="*" name="ServiceStack.Factory" type="ServiceStack.HttpHandlerFactory, ServiceStack" verb="*" preCondition="integratedMode" resourceType="Unspecified" allowPathInfo="true" />
    
        2
  •  1
  •   mythz    13 年前

    这个 ServiceStack.WebHost.Endpoints.ServiceStackHttpHandlerFactory 类型在主管道内 服务堆栈.dll 。如果找不到它,则它没有被正确引用,这可能是因为试图将它添加到错误的配置文件(例如客户端配置文件)中,或者在Web.config所在的Host项目中没有正确引用它。

    推荐文章