我正在尝试使用WCF REST服务和Unity(企业库5),但找不到如何使用Unity实现服务解析的示例。我想在global.asax中调用所有接口(interface)和实现的注册进行解析。
我使用以下类来注册容器:
public class DependencyResolver
{
public static IUnityContainer Container { get; private set; }\
static DependencyResolver()
{
Container = new UnityContainer()
.AddNewExtension<EnterpriseLibraryCoreExtension>()
.RegisterType<IServiceDAO, ServiceDAO>()
.RegisterType<IServiceBO, ServiceBO>()
.RegisterType<IService, Service>();
}
}
我进行了搜索,但找不到足够的示例,有人会提供应用此解决方案的代码示例吗?
我找到了一些例子,比如How do I pass values to the constructor on my wcf service?但我希望所有服务都有相同的上下文。我想要这样的http://entlibex.codeplex.com/wikipage?title=Unity%20Service%20Behavior&referringTitle=Documentation但就我而言,我没有 svc 文件。
谢谢。
最佳答案
为什么使用 WCF 4 REST? WCF 4 REST 有点过时且难以使用。
我建议您使用 ASP.NET Web API(以前的 WCF Web API)。它更容易用于 REST 服务和 DI/IoC 容器(在 WCF 中,您应该编写自己的主机、行为等),因为它对 DI/IoC 具有良好的内置连接支持。
这里是示例:
http://www.asp.net/web-api/overview/extensibility/using-the-web-api-dependency-resolver
关于c# - WCF 与 Unity 一起休息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11124474/