autofac相关内容
注意:这里有 3 个问题,我没有单独提出问题,因为它们都与相同的代码有些相关. 我有以下代码在每个应用程序的生命周期中在 Application_Start 中注册到我的 RavenDB 的连接: var store = new DocumentStore { Url = "http://localhost:8080" };store.Initialize();builder.Regist
..
问题(抽象) 给定一个注册依赖项 X 的模块.依赖项 X 在 MVC3 应用程序中具有不同的生命周期(每个 HttpRequest 的生命周期),然后在控制台应用程序中(每个生命周期范围的依赖项具有名称).在哪里或如何指定依赖项 X 的生命周期? 案例 我已将所有与数据库相关的代码放在一个程序集中,其中有一个模块可以注册所有存储库.现在ISession(Nhibernate)注册
..
我从 MVC4 beta 升级到 RC 和最新的 autofac.以下操作已正确绑定,但现在两个参数都为空.我看到他们改变了有关格式化程序等的内容,但我不确定是什么导致了我的问题 [HttpPost]RedirectModel MyAction(string value1, string value1) 请求 方法:POST接受:应用程序/json网址:api/controller/myac
..
我最近成为 Autofac 的 OwnedInstances 功能的重度用户.例如,我用它来提供一个工厂来为我的数据库创建一个工作单元,这意味着我依赖于 UnitOfWork 工厂的类正在请求类型的对象: Func> 这非常有用——非常适合 将 IDisposable 排除在我的接口之外--但它是有代价的:由于 Owned 是 Autofac 程序集的一部分,我必须在我的每个了解 Owned,
..
我想在 Autofac 中为每个匹配的生命周期范围注册一个实例,但偶尔需要从全局容器(没有匹配的生命周期范围)请求一个实例.在不存在匹配的生命周期范围的场景中,我想给出一个顶级实例而不是抛出异常. 这可能吗? 解决方案 我认为您最好通过引入新的生命周期选项来扩展 Autofac.我采用了 Autofac 源并对其进行了一些修改: 公共静态类 RegistrationBuilderE
..
在 ASP.NET MVC 2 我有一个名为 [Transaction] 的 ActionFilterAttribute,它在执行操作并提交或提交之前启动一个 NHibernate 事务之后将其回滚,具体取决于是否抛出异常.ISession 实例是 HttpRequestScoped() 并由 注入Autofac.它看起来像这样并且效果很好: [AttributeUsage(AttributeT
..
我正在尝试使用 Dependency.SetResolver 方法并使用 autofac 与 autofac mvc 5 集成在新应用上设置容器. 问题是设置解析器似乎没有任何作用.将始终使用默认解析器,并且始终期望使用默认构造函数. 有什么想法吗? 编辑 - global.asax.cs,我已将其简化为: var b = new ContainerBuilder();b.Re
..
在 Caliburn.Micro 文档中,作者提到了这种可能性: 文档链接 IHandle 继承自标记接口 IHandle.这允许使用强制转换来确定对象实例是否订阅了任何事件.如果您与 IoC 容器集成,这将启用简单的自动订阅.大多数 IoC 容器(包括 SimpleContainer)都提供了一个在创建新实例时调用的钩子.只需连接容器的回调,检查正在创建的实例是否实现 IHandle
..
我正在尝试让 autofac 与我正在处理的 mvc6 应用程序一起工作.我找到了这篇博客文章但是它似乎有点过时了.看起来它使用了 beta3 位 我正在使用这个 clr 版本 1.0.0-beta5-11911 我的项目有这两个参考 "Autofac": "4.0.0-alpha2","Autofac.Dnx": "4.0.0-alpha2", 文章里面讲了如何修改star
..
我注意到我经常需要实现复合模式.例如: interface IService { ... }类 Service1 : IService { ... }类 Service2 : IService { ... }类 CompositeService : IService{公共复合服务(IEnumerable 服务){ ... }...} 我想在容器中将 CompositeSer
..
我被这个SO问题触发关于 Autofac 的(.NET 4.0)协方差和逆变支持,现在我正在尝试实现类似的东西,但没有任何运气. 我想要实现的是以这样的方式配置 Autofac,当我解析单个具体的 IEventHandler(为了演示使用 container.Resolve,但通常当然使用构造函数注入),Autofac 将返回一个 MultipleDispatchEventHandler,它
..
我正在尝试将依赖项注入共享布局视图页面,以避免在使用该布局的每个视图中都执行此操作. 我已经按照 wiki 中的 指南 将依赖项注入到视图中,但是属性始终为空. Autofac 可以将属性注入作为布局文件的自定义视图页面吗? 这是我的设置.自定义视图页面 命名空间 MyApp{使用 System.Web.Mvc;公共抽象类 CustomViewPage : WebViewPag
..
我想知道在其自身内注册容器是否有任何副作用 IContainer 容器;ContainerBuilder builder = new ContainerBuilder();容器 = builder.Build();builder.RegisterInstance(container).As(); 并像这样使用它 builder.RegisterType().As().
..
我使用以下代码为所有需要它的类注册 log4net. 公共类 LogInjectionModule : 模块{私有只读字符串_configPath;公共 LogInjectionModule(string configPath){_configPath = configPath;}protected override void AttachToComponentRegistration(ICom
..
我正在尝试实现一个简单的 CQRS 应用程序示例. 这是我的“命令"部分的结构: 公共接口ICommand{}//命令处理程序的基本接口interface ICommandHandler其中 TCommand: ICommand{无效执行(TCommand命令);}//命令示例公共类 SimpleCommand:ICommand{//一些属性}//SimpleCommand 命令处理程序的
..
我发现了一些 2008 年的基准测试结果,用于测试几个顶级 .NET DI/IoC 容器的性能 此处.但我一直无法找到任何更新的结果.是否有任何基准可以比较一些大型 IoC 容器(StructureMap、Unity、Ninject、Autofac、Castle Windsor 等)? 解决方案 我不建议使用性能基准来选择 IoC 容器.还有很多很多更重要的因素,例如功能集、开发路线图和可
..
autofac 中的 AsSelf() 是什么?我是 autofac 的新手,AsSelf 到底是什么,下面两者有什么区别? builder.RegisterType().AsSelf().As();builder.RegisterType().As(); 谢谢! 解决方案 通常,您希望将接口而不是实现注入到您的类中. 但让我们假设您有: interface IFooServi
..
我有一个 .Net Core 应用程序,我使用 .AddMediatR 扩展名按照 CQRS 方法为我的命令和处理程序注册程序集. 在 Startup.cs 的 ConfigureServices 中,我使用了官方包 MediatR.Extensions.Microsoft.DependencyInjection 中的扩展方法,并带有以下参数: services.AddMediatR(ty
..
我将 Autofac IoC 容器与提供 InstancePerHttpRequest 生命周期范围的 MVC4 附加组件一起使用.但是在我的项目中,我有 web、web-api 和后台工作线程.在下面的示例中,我假设 InstancePerHttpRequest 范围在不是源自 Web 请求时没有多大意义. builder.RegisterType().As().InstancePerHttp
..
我正在尝试让 Quartz.net (2.1.2) 与 IoC 容器 (autofac) 一起工作,因为我有需要在预定作业中使用的服务.我找到了有关该主题的类似帖子,但似乎找不到带有 autofac 特定注册示例的帖子. 以下帖子涉及我遇到的相同问题: 如何使用 Quartz.net 2.0 调度任务? 但是,我认为我缺少的部分是当答案说“并且不要忘记在 IoC 容器中注册作业"
..