WCF 服务的 Unity 依赖注入中的 web.config 应该是什么样子?

发布于 2024-09-24 09:16:32 字数 430 浏览 1 评论 0原文

我正在创建新的实例提供程序,通过 Unity 解决服务。 我不知道如何在 web.config 中添加配置。 以下是我的服务课程。

公共课服务:IService {

private IUnitOfWork _unitOfWork; 

private IMyRepository _myRepository; 

// Dependency Injection enabled constructors 

public Service(IUnitOfWork uow, IMyRepository myRepository) 
{ 
    _unitOfWork = uow; 
    _myRepository = myRepository; 
} 

public bool DoWork()
{
        return true;
}

}

I am creating new instnace provider which resolve services through Unity.
I am not sure how to add the configuration in web.config.
Following is my service class.

public class Service : IService
{

private IUnitOfWork _unitOfWork; 

private IMyRepository _myRepository; 

// Dependency Injection enabled constructors 

public Service(IUnitOfWork uow, IMyRepository myRepository) 
{ 
    _unitOfWork = uow; 
    _myRepository = myRepository; 
} 

public bool DoWork()
{
        return true;
}

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

爱本泡沫多脆弱 2024-10-01 09:16:32

您应该仅在需要时才使用 web.config能够在编译后改变服务。这不应被视为默认情况。

这意味着在大多数情况下,最好采用代码作为配置,如下所示:

container.RegisterType<Service>();
container.RegisterType<IUnitOfWork, MyUnitOfWork>();
container.RegisterType<IMyRepository, MyRepository>();

如果必须使用 XML 配置,则可以执行类似的操作。 Unity 出色的文档解释了详细信息

它可能会是这样的:

<container>
  <register type="Service" />
  <register type="IUnitOfWork" mapTo="MyUnitOfWork" />
  <register type="IMyRepository" mapTo="MyRepository" />
</container>

You should only use web.config if you need to be able to vary the services after compilation. That should not be regarded as the default scenario.

This means that in most cases it would be better to resort to Code as Configuration, like this:

container.RegisterType<Service>();
container.RegisterType<IUnitOfWork, MyUnitOfWork>();
container.RegisterType<IMyRepository, MyRepository>();

If you must use XML configuration you can do something similar. Unity's excellent documentation explains the details.

It would probably go something like this:

<container>
  <register type="Service" />
  <register type="IUnitOfWork" mapTo="MyUnitOfWork" />
  <register type="IMyRepository" mapTo="MyRepository" />
</container>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文