[英]autofac not working for WebAPI 2 on azure website
我正在尝试在azure上设置我的Web api,一切都在本地工作文件,但是当我部署到azure时,出现以下错误消息:
尝试创建“ DestinationController”类型的控制器时发生错误。 确保控制器具有无参数的公共构造函数。
该网站是正常的天蓝色网站,不是工作人员规则。
这是我的Autofac引导程序类:
var builder = new ContainerBuilder();
builder.RegisterApiControllers(Assembly.GetExecutingAssembly());
builder.RegisterType<UnitOfWork>().As<IUnitOfWork>().InstancePerRequest();
builder.RegisterType<DatabaseFactory>().As<IDatabaseFactory>().InstancePerRequest();
builder.RegisterAssemblyTypes(typeof(DestinationRepository).Assembly).Where(t => t.Name.EndsWith("Repository")).AsImplementedInterfaces().InstancePerRequest();
builder.RegisterAssemblyTypes(typeof(DestinationService).Assembly).Where(t => t.Name.EndsWith("Service")).AsImplementedInterfaces().InstancePerRequest();
builder.RegisterWebApiFilterProvider(GlobalConfiguration.Configuration);
IContainer container = builder.Build();
// Create the depenedency resolver.
var resolver = new AutofacWebApiDependencyResolver(container);
// Configure Web API with the dependency resolver.
GlobalConfiguration.Configuration.DependencyResolver = resolver;
而我的控制器:
public class DestinationController : ApiController
{
private readonly IDestinationService _destinationService;
public DestinationController(IDestinationService destinationService)
{
this._destinationService = destinationService;
}}
谢谢你的帮助。
打开自定义错误消息后,我发现如果注入的依赖项之一引发异常,您将在上面得到错误消息。 但是原始错误消息将位于inner-exception中,您可以通过从web.config关闭自定义错误来查看
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.