1

我有一个从另一个项目继承而来的相当昂贵的库。此程序集通过 Unity 使用拦截,并且需要精心设计的 Web.config 用于设计时配置。我正在尝试从 MSMQ WCF 服务中使用此程序集,当程序集中的代码尝试打开企业库托管的数据库连接时,我收到错误。

依赖项解析失败,type = "ServicesImplementation.EntityMaster.IEntityRepository",name = "(none)"。异常发生时:解决时。异常是: InvalidOperationException - 当前类型 ServicesImplementation.EntityMaster.IEntityRepository 是一个接口,无法构造。您是否缺少类型映射?

我的问题是,我是否需要从我的 WCF 服务中承担所有配置职责,或者此配置是否封装在引用的程序集中。

4

1 回答 1

1

您必须在 .config 文件中包含所有配置。它是应用程序获取配置数据的默认来源。另请注意,如果您在 IIS 中托管,则应使用 web.config,如果不是(Windows 服务或应用程序) - 使用 app.config。可以将部分配置提取到另一个文件并从主配置中引用它。

例如:

Assembly1 包含服务定义和主机逻辑。
Assembly2 实际上托管 Assembly1 服务。

在这种情况下,所有服务配置都必须驻留在 Assembly2 *.config 文件中。

于 2012-10-09T22:09:36.517 回答