【问题标题】:RIA Services error but not usedRIA 服务错误但未使用
【发布时间】:2013-02-21 15:14:19
【问题描述】:

我创建了一个 ASP.NET MVC WebPages 应用程序。在本地完美运行。当我将它安装为网站时,它可以在服务器上完美运行。但是,当它作为 IIS 应用程序安装时(低于另一个网站,使用相同的应用程序池),它所做的只是抛出这个异常:

无法加载文件或程序集 'System.ServiceModel.DomainServices.Hosting,版本=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其其中之一 依赖项。系统找不到指定的文件。

显然与未使用的 WCF RIA 服务有关。我只使用 Linq to SQL。这怎么可能?

服务器:带有 IIS 7.5 的 Windows Server 2008 R2

【问题讨论】:

  • 我发现 web.config 的一部分是从使用 OData(RIA 服务)的父网站继承的。问题是我找不到如何在“儿童”网站上禁用它。我仍然需要将 2 个程序集复制到子 bin 文件夹中...

标签: asp.net asp.net-mvc iis wcf-ria-services asp.net-webpages


【解决方案1】:

检查应用程序的 web.config 是否包含以下条目:

<httpModules>
  <add name="DomainServiceModule"
       type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</httpModules>

它位于&lt;system.web&gt; 部分。

还有一个类似的条目:

<modules runAllManagedModulesForAllRequests="true">
  <add name="DomainServiceModule" 
       preCondition="managedHandler"
       type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</modules>

&lt;system.webserver&gt; 部分。

删除条目,那么您应该不会得到异常。

【讨论】:

  • 我试过了(在模块部分 - 在集成模式下运行)但没有用。
  • 您是否也删除了 中的条目?我已经更新了我的答案
  • 其实我都试过了,但仍然需要在 bin 文件夹中部署 2 个程序集(主机和服务器)。 IIS 中没有办法告诉子应用程序不要从父级继承任何东西并表现得像一个完全独立的应用程序吗?
  • @Koen 也许您需要在您的主站点中停用runAllManagedModulesForAllRequests。如果已启用。
  • 类似地,在 IIS GUI 中,我单击了站点的模块图标并将其从那里删除。
【解决方案2】:

我知道得太晚了,但我的回答可能对某些人有用。 我有类似的问题,但没有对应于 IIS。

所以,我有基于 RIA 服务的网络应用程序。这个应用程序使用了单独的 dll (DAL),其中包含由 RIA 属性赋予的一些类(当然,它引用了 RIA dll)。该 dll (DAL) 被另一个不使用 RIA 的应用程序引用并引发了与您提到的相同的错误(但仅限于 System.ServiceModel.DomainServices.Server)。 此错误仅在 WCF 通道创建期间引发 (ChannelFactory)。所以我想WCF在分析合同类的属性时应该知道所有引用的dll。但是我没有找到任何解释为什么 WCF 不只使用自己的属性而不分析所有属性。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-07
    • 1970-01-01
    • 2018-04-05
    • 1970-01-01
    相关资源
    最近更新 更多