DDD, Unit of Work 및 autofac.wcf를 사용하여 WCF에서 프로젝트를 수행하고 있으며 다음 오류가 발생합니다.WCF 용으로 구성된 autofac wcf가 Autofac 컨테이너에 등록되지 않았습니다.
WCF 용으로 구성된 'WebCode.Service.WCF.TablasMaestrasService, WebCode.Service.WCF'서비스가 Autofac 컨테이너에 등록되어 있지 않습니다.
Bootstrapper.cs
builder.RegisterType<UnitOfWork>().As<IUnitOfWork>();
builder.RegisterType<DatabaseFactory>().As<IDatabaseFactory>();
builder.RegisterType<SystemRuntimeCacheStorage>().As<ICacheStorage>();
builder
.RegisterAssemblyTypes(typeof(PaisRepository).Assembly)
.Where(t => t.Name.EndsWith("Repository"))
.AsImplementedInterfaces();
builder
.RegisterAssemblyTypes(typeof(PaisService).Assembly)
.Where(t => t.Name.EndsWith("Service"))
.AsImplementedInterfaces();
IContainer container = builder.Build();
container.Resolve<IUnitOfWork>();
container.Resolve<IDatabaseFactory>();
container.Resolve<ICacheStorage>();
AutofacHostFactory.Container = container;
TablasMaestrasService.svc
<%@ ServiceHost
Language="C#"
Debug="true"
Service="WebCode.Service.WCF.TablasMaestrasService,WebCode.Service.WCF"
Factory="Autofac.Integration.Wcf.AutofacServiceHostFactory, Autofac.Integration.Wcf"
CodeBehind="TablasMaestrasService.cs" %>
TablasMaestrasService.cs
[ServiceContract]
public class TablasMaestrasService : ITablasMaestrasService
{
private readonly IPaisService _paisService;
public TablasMaestrasService(IPaisService paisService)
{
_paisService = paisService;
}
public List<PaisDto> GetPaises()
{
return = _paisService.GetAll();
}
}
ITablasMaestrasService.cs
[ServiceContract]
public interface ITablasMaestrasService
{
[OperationContract]
List<PaisDto> GetPaises();
}
,
그럴 수 있습니까? 도움
그것은 저장소가 호출되지 않고 검증 나는 또한이'[의 ServiceContract]'속성에 할 필요가 생각 – ascariz
을 수행 인터페이스가 아니라 구현에. –