-
5 votesanswersviews
将NLog与MEF一起使用的最佳方法是什么?
我想知道将NLog与托管可扩展性框架(MEF)一起使用的最佳方法是什么? 我有一个支持使用MEF架构(导入和导出等)插件的应用程序我想为我的应用程序添加日志记录功能 . 作为日志记录组件,我想使用NLog . 你会推荐什么? 1.为NLog创建一个包装器,即配置NLog的其他插件,并导出其他插件导入的void Log(字符串级别,字符串消息)等函数 . 每个插件都应该拥有自己配置和使用的NLog实... -
1 votesanswersviews
Unity,单元测试和 ASP.NET(不是 MVC)
我在一个 ASP.NET 项目(而不是 MVC)中使用 Unity。似乎单元测试需要了解 Unity,创建一个 IoC 容器并将 Mocks 插入其中,这与我使用的其他单元测试框架不同。 使用 Unity 解析类的示例似乎是: public class Foo { [Dependency] private ILogger Logger { set; get; } } 或直接从... -
0 votesanswersviews
ASP.NET mvc 和服务层中的 Unity
我正在研究一个 ASP.NET MVC 应用程序。应用程序的核心功能都发生在服务层,MVC 网站只处理基本请求路由和 view/model 准备。 因为这个应用程序需要为所有可能有不同代码需求的 1...N 个客户端进行定制,所以我希望开发核心功能,并且非常依赖于接口。在我的阅读中,我觉得 Unity 或其他依赖注入/ IOC 框架将是这个代码的一个想法。到目前为止我看到的所有示例都涉及使用 Un... -
2 votesanswersviews
服务定位器模式 - 如何处理同一服务接口的多个实现
我对 Service Locator 设计模式有点困惑。 关于这种模式似乎是一个非常非常基本的问题,但我无法弄明白:如果我有多个类实现一些 IServiceX 接口怎么办?定位器如何解析我正在寻找的实例? 例如,我可以注册: ServiceA 实现 IServiceX ServiceB 实现 IServiceX 这似乎完全可能,但我不确定。假设我有两种消息传递服务(相同的服务接口),我想在 run... -
1 votesanswersviews
IoC/DI:当有多个相同接口的实现时,如何注入特定实例
假设我们有两个IService接口的实现: public interface IService { } public class Service1 : IService { } public class Service2 : IService { } 然后我们有两个依赖于IService的类: public class Consumer1 { public Consumer1(ISe... -
1 votesanswersviews
使用 ASP.NET Core DI 注册接口的通用和特定实现
我已经阅读了 Armen Shimoon 的文章ASP.NET 核心:工厂模式依赖注入,我决定使用他建议的技术解决我的 ASP.NET 核心 DI 问题。我有一个通用的界面: public interface IItemRepository<out T> where T : BaseItem 及其通用实现: public class ItemRepository<T> :... -
0 votesanswersviews
Springboot @Component和@Autowired已注释,但仍然获得空指针异常
我仍然无法弄明白为什么我要获得NPE foo.setName("FOOD") 这是我试图运行并面临问题的代码 . @SpringBootApplication public class Application { @Autowired private static Foo foo; public static void main(String[] args) throw... -
2 votesanswersviews
你如何看待IOC错误在哪里?
因此,我在Visual Studio中创建了一个新的ASP.NET Core项目,并进行必要的更新以使其在beta5上运行 . 我可以打开一些页面但是当我去AccountController提供的任何服务时,我得到以下异常 处理请求时发生未处理的异常 . MissingMethodException:没有为此对象定义的无参数构造函数 . System.RuntimeTypeHandle.Cr... -
0 votesanswersviews
Ninject(IoC)和具有条件逻辑的工厂的替代品
我遇到了一个我想用Ninject解决的场景,但到目前为止我的工作都没有遇到过这种情况 . WCF服务应用程序 W3C Log Parsing App(过于简单化以用于演示目的) . 由W3CLogItem实现的IW3CLogItem W3CLogItem具有IUrlData类型的公共成员(包含重要数据,但可以是5个具体实现之一,具体取决于它包含的内容) . 决定使用哪个具体实现是基于字符串匹配,其... -
2 votesanswersviews
NInject扩展工厂
在阅读 NInject v3 上的新文档以及如何使用Factory Extension之后,显然我仍然没有完全得到它,因为我的代码抛出异常到处... 我得到这个例外,如果人们愿意,我可以粘贴整件事,但我会尽量保持简短 . 激活IDeployEntityContainer时出错没有匹配的绑定可用,并且该类型不可自我绑定 . 这是我的代码...... Ninject Bind Module类 cl... -
6 votesanswersviews
使用Windows服务手动实现IoC
我是IoC的新手,因此一直关注Jeffery Palermo在http://jeffreypalermo.com/blog/the-onion-architecture-part-1/的帖子中提供的示例以及他在这里托管的书https://github.com/jeffreypalermo/mvc2inaction/tree/master/manuscript/Chapter23 最值得注意的是,我... -
3 votesanswersviews
洋葱架构我们应该将域模型注入表示层吗?
我正在尝试为ASP.Net MVC 5项目实现Onion架构 . 我已经看到了服务应该被注入而不是实例化的意见,即使纠正我,如果我错了,Jeffery Palermo(http://jeffreypalermo.com/blog/the-onion-architecture-part-3/)表达的想法是任何外层应该能够直接调用任何内层 . 所以我的问题是 洋葱建筑能否在没有IOC的情况下工作,... -
5 votesanswersviews
是否可以在OWIN上使用WebAPI实现洋葱架构和DI?
我正在尝试遵循洋葱架构来获取在OWIN / Katana上托管的WebAPI服务 . 我有这样的解决方案结构: DependencyResolution:包含OWIN启动类和IoC设置 WebApi:Web API控制器 基础设施:接口实现 核心:接口 我希望DependencyResolution项目为WebApi项目注入依赖项 . DependencyResolutio... -
6 votesanswersviews
Fluent IOC配置/模块的最佳位置(目前正在尝试Ninject)
我正在努力找到找到我的Ninject配置“模块”(指定类型绑定的地方)的最佳位置 . 我希望我只是错过了一些明显的技巧,因为使用流畅的配置(因此Ninject)开始变成一个交易破坏者: 在一个包含三个独立项目的简单Web堆栈中:Web,BusinessLogic,DataAccess . 我不希望Web层必须直接引用DataAccess层,但我无法看到解决方法,因为: 如果我把 DataAcc... -
1 votesanswersviews
南希Ninject模块构建
我正在尝试使用Ninject作为IoC容器来测试我的Nancy模块 . 我的问题是我似乎无法让Nancy使用我的IoC绑定来解析NancyModule类型 . 我正在使用最新的Nancy on Nuget,最新的Nancy.Bootstrap.Ninject源自最新的Ninject . 我的测试设置如下: [TestFixtureSetUp] public virtual void Cla... -
2 votesanswersviews
依赖注入.NET Core - InvalidOperationException
我正在学习.net核心,我正在尝试在startup.cs中使用IServiceCollection来解决我的依赖关系 . 我正在我的控制器中注入一个depdency,并且依赖性被解析为一个也具有注入依赖项的类 . 基本上我得到一个InvalidOperationException,因为它无法激活依赖项 . 这是我的堆栈跟踪: InvalidOperationException: Unable to... -
3 votesanswersviews
哪些依赖注入框架最适合ASP.NET MVC 4? [关闭]
我是Dependency Injection的新手,并致力于在ASP.NET MVC 4中开发的项目 . 因此,我遇到了依赖注入的使用,并且很想知道哪些框架具有良好的性能和对ASP.NET MVC 4的支持 . 我正在使用Repository Pattern,UnitOfWork和Service Layer作为业务逻辑创建一个多层架构 . 所以,我想要依赖注入 . 到目前为止我对其他要求没有太多想... -
6 votesanswersviews
如何使用Automapper进行统一依赖注入?
我计划将Automapper与ASP.NET MVC解决方案和Unity DI一起使用 . 在automapper上发布的关于如何使用的视频非常陈旧,并没有显示映射器如何与依赖注入一起使用 . stackoverflow上的大多数示例也使用Mapper.CreateMap()方法,现在不推荐使用它 . 自动化指南说 获得类型后,可以使用MapperConfiguration实例和CreateM... -
10 votesanswersviews
Ninject Factory Extension将多种混凝土类型绑定到一个界面
简介: 我正在使用Ninject Factory Extension将简单的对象工厂注入我的服务类 . 这是我的界面和两个实现它的类: public interface ICar { void Drive(); void Stop(); } public class Mercedes : ICar { public void Drive() { Do ... -
11 votesanswersviews
spring 自动装配和原型范围
我有一个名为Bar的类,带有以下注释: @Configurable(autowire = Autowire.BY_TYPE) 在私有成员上,我有以下注释: @Autowired(required = true) private Foo foo; 在spring配置中,我有一个类Foo的bean . 如果使用 scope="prototype" 定义bean,则它不起作用,我得... -
0 votesanswersviews
在业务层中反转控制和注入数据层依赖性
我们正在.net / c#中设计一个分层业务应用程序,我们正在尝试按照我们认为合适的方式遵循SOLID原则 . 可测试性在我们的项目中非常重要,为此我们使用Moq . 除了其他方面,我们使用moq来模拟我们的实体框架上下文 . 由于我们测试的主要目标是主业务层(BL)逻辑,因此可以使用数据访问层(DAL)上下文注入业务层类 . 见下面的例子 . 负责加载数据的BL类的示例构造函数 . 此类注入用于... -
2 votesanswersviews
symfony服务容器中的回调参数
我正在使用Symfony的注入容器和Serializer组件,每次都提供具有默认序列化配置的服务 . 特别是使用ObjectNormalizer: <service id="my_bundle.entity_serializer_normalizer" class="Symfony\Component\Serializer\Normalize... -
1 votesanswersviews
使用DI / StructureMap切换数据库
我有一个应用程序,它侦听队列中的消息并处理所述消息 . 到目前为止,我已经为每个客户安装了一个单独的应用程序实例,每个客户在配置文件中都有自己的数据库连接字符串 . 在更新应用程序时,这变得很痛苦 . 现在我正在尝试重构这个,所以我能够安装一个具有所有必要连接字符串的实例,并且将根据一些运行时参数 - 例如message.Client在数据库之间切换 . 如果我用手连接所有东西,这一切都很好...... -
598 votesanswersviews
为什么我需要一个IoC容器而不是直接的DI代码? [关闭]
我一直在使用Dependency Injection(DI)一段时间,在构造函数,属性或方法中注入 . 我从未觉得需要使用Inversion of Control(IoC)容器 . 但是,我读的越多,我觉得社区使用IoC容器的压力就越大 . 我使用.NET容器,如StructureMap,NInject,Unity和Funq . 我仍然没有看到IoC容器如何使我的代码受益/改进 . 我也害怕在工作... -
7 votesanswersviews
如何使用Spring在不遵循Java bean规范的setter中注入对象?
我想一起使用Spring和wx-xmlrpc . 问题是XmlRpcClient有一个不遵循Java Bean规范的setConfig()方法:setter和getter不使用相同的Class . 所以当我有以下context.xml时Spring抱怨: <bean id="xmlRpcClient" class="org.apache.xmlrpc.clien... -
-1 votesanswersviews
Inversifyjs:如何注入动态值?
我如何使用具有构造函数中提供的动态值的inversifyjs这样的类? class Counter { private sentence:string; constructor(sentence:string){ this.sentence = sentence; } wordCount():number{ ret... -
356 votesanswersviews
每个Web请求一个DbContext ...为什么?
我一直在阅读很多文章,解释如何设置Entity Framework的 DbContext ,以便每个HTTP Web请求只使用各种DI框架创建和使用一个 . 为什么这首先是一个好主意?使用这种方法有什么好处?在某些情况下这是个好主意吗?在使用存储库方法调用实例化 DbContext 时,您是否可以使用此技术执行某些操作? -
0 votesanswersviews
@Autowired注释在spring-Getting BeanCreationException和java.lang.NoSuchMethodError中
I have written a small code to check @Autowired annotation in Spring, here is my piece of code. package beans; //import org.springframework.beans.factory.annotation.AutoWired; import ... -
388 votesanswersviews
控制反转与依赖注入
根据paper written by Martin Fowler,控制反转是程序控制流程反转的原则:外部源(框架,服务,其他组件)控制程序,而不是程序员控制程序流程 . 这就像我们把东西塞进别的东西 . 他提到了一个关于EJB 2.0的例子: 例如,会话Bean接口定义ejbRemove,ejbPassivate(存储到辅助存储)和ejbActivate(从被动状态恢复) . 你无法控制何时调用... -
0 votesanswersviews
Laravel 4和Sentry 2扩展了哨兵课程
在Sentry 2中尝试扩展哨兵课时遇到了一些问题 . 这就是我所做的以及我想要做的事情: 创建了一个新的外观: namespace pusers; use Illuminate\Support\Facades\Facade; class ADSentryFacade extends Facade { /** * Get the registered name of the...