Asp.net mvc 依赖项的解析失败
我有以下代码: 取消保单服务Asp.net mvc 依赖项的解析失败,asp.net-mvc,unity-container,Asp.net Mvc,Unity Container,我有以下代码: 取消保单服务 using MyApp.Model.Models; using Repository.Pattern.Repositories; using Service.Pattern; namespace MyApp.Service { public interface ICancellationPolicyService : IService<CancellationPolicy> { } public class Canc
using MyApp.Model.Models;
using Repository.Pattern.Repositories;
using Service.Pattern;
namespace MyApp.Service
{
public interface ICancellationPolicyService : IService<CancellationPolicy>
{
}
public class CancellationPolicyService : Service<CancellationPolicy>, ICancellationPolicyService
{
public CancellationPolicyService(IRepositoryAsync<CancellationPolicy> repository)
: base(repository)
{
}
}
}
你有什么想法吗,为什么?如果有任何提示,我将不胜感激。请使用此提示:
RegisterType<yourInterface>().As<yourClass>().AsSelf();
RegisterType().As().AsSelf();
它可能会起作用。听起来你好像还没有注册
IRepositoryAsync
。将该注册也添加到unity注册中
假设IRepositoryAsync
的实现是CancellationPolicyRepository
:
.RegisterType<IRepositoryAsync<CancellationPolicy>, CancellationPolicyRepository>()
.RegisterType()
或者,如果您有一个通用存储库的话
.RegisterType<IRepositoryAsync<CancellationPolicy>, MyGenericRepository<CancellationPolicyRepository>>()
.RegisterType()
它起作用了吗?如果是,则将其标记为答案。好让其他人知道,谢谢。我向UnityConfig添加了.RegisterType().As().AsSelf(),但是.As不是有效的方法。我需要更改什么?您是否使用Autofac进行依赖项注入?如果是,则它必须工作。您可能也想添加AutoFac集成MVC。在线检查nuget软件包中的autofac MVC5。你会找到的。不,我没有用AutoFac。有没有一种方法可以做到这一点。我成功注册了其他类型。我不知道,为什么这个不起作用。
RegisterType<yourInterface>().As<yourClass>().AsSelf();
.RegisterType<IRepositoryAsync<CancellationPolicy>, CancellationPolicyRepository>()
.RegisterType<IRepositoryAsync<CancellationPolicy>, MyGenericRepository<CancellationPolicyRepository>>()