首页 > TAG信息列表 > inversion-of-control

加载许多托管DLL而不使用其中任何类型是否不好?

背景:在我公司,我们正在开发使用相同核心dll的大量应用程序.这些dll正在使用Spring.net的IoC容器进行接线(自动接线).所有应用程序都使用相同的spring配置文件,并且此配置文件指向许多不同dll中的许多类.但是,并非所有应用程序都需要每个dll的功能.但是由于IoC容器的工作方式,所有dl

Autofac:如何在依赖于另一个对象函数输出的类上使用构造注入

这个问题通常是关于IoC的,但是我使用的是Autofac,因此Autofac解决方案会很棒. 因此,假设以下类别: class A { IEnumerable<B> GetBs(); } class B { // Some code } class C { readonly IEnumerable<B> bs; C(IEnumerable<B> bs) { this.bs = bs;

c#-将类插入到spring.net的using语句中

我正在开发一个.net c#应用程序,该应用程序将依赖注入与spring.net结合使用,并遇到了问题.我有以下方法: public string Process() { using(var p = new MyClass()) { // do some processing return p.RunClass(); } } 我正在配置我的spring

C#-Winforms插件体系结构中的IOC

我正在使用具有主程序的体系结构.当它开始时,它通过反射在执行路径中查找从基类继承的DLL.这些是插件. 当对新项目提出新要求时,通常会创建一个新插件.该插件具有主插件类,然后可能具有许多其他类和Windows窗体. 主要的插件类具有initialize方法,但是作为其类库,没有program.cs可以

c#-选择一个IoC框架(用于DI和AOP)

我们正在构建.NET应用程序,我想集成一个框架来执行DI和一些AOP(注入一些诊断/日志代码). 我知道那里有很多框架,我不确定要选择哪个框架,因为每个审查框架的网站都会给出不同的结果和意见. 我很想听听一些基于现实生活经验的客观信息,以做我们需要做的事情(上面列出).解决方法:简短

CodeGo.net>了解Ninject的好处

我已经看到了Still need help understanding why Ninject might be better than manual DI这个问题,但我仍然对Ninject的实用性感到困惑… 我了解这段代码… class Samurai { readonly IWeapon weapon; [Inject] public Samurai(IWeapon weapon) { this.

Spring无法按配置文件选择自动装配实现

我试图找出如何使用@Autowired批注在Spring中进行模拟实现.我试图通过配置文件以这种方式来驱动: >有一个默认配置文件,当未定义配置时运行>指定测试配置文件后,它将自动装配模拟对象,而不是默认实现. 在追求这种设置时,我遇到了一个问题,即Spring似乎无法分辨出我的实现之间的区别.

c#-Autofac-在解析时在.OnActivated方法内传递值

我解析实例时需要在.OnActivated方法内部传递值 builder.RegisterType<MyType>().PropertiesAutowired(). .OnActivated(x => { var myValue = //i need to get a value passed when i call Resolve //do stuffs } ); v

java-尽管使用@Primary,但两个具有相同名称的bean仍会导致ConflictingBeanDefinitionException

我有一个应用程序初始化程序类,用于将应用程序特定的数据插入数据库. @Component("applicationInitializer") public class ApplicationInitializer { @PostConstruct public void init(){ // some clever code here } } 还有一个DevApplicationInitializer

Spring查找没有注释的bean

Spring是否可以找到在类上没有@Component(和其他)注释且在xml中没有显式bean声明的接口实现?只是扫描软件包并找到实现接口的类?解决方法:从Spring doc By default, classes annotated with @Component, @Repository, @Service, @Controller, or a custom annotation that itsel

弹簧-样品IoC,不是DI

依赖注入是控制反转的某种形式. >有人可以指定其他形式的 控制,那不是依赖注入吗?>是否有任何IoC容器但不是DI的Java框架    容器 ?>弹簧的哪一部分是IoC,而不是DI?解决方法:控制反转是允许框架运行您的自定义代码的能力.正如马丁·福勒(Martin Fowler)所说的here: Inversion of

Java-在具有(没有)DI容器的Android中正确进行依赖项注入(匕首1)

我目前正在开发(实际上是在构建)具有蓝牙连接和功能的Android应用; RESTful服务的HTTP通信.我碰巧遇到了一个名为Dagger的“依赖注入”框架,这对我来说是革命性的.但是,我开始更多地考虑依赖注入的“真正精神”,并且遇到了更多博客文章/意见,解释了该概念,并实际上建议使用“构造函

CodeGo.net>使用DbContext的SOLID方式

通过直接依赖于命令和查询处理程序中的DbContext,我了解到我违反了StackOverflow user的注释中的SOLID-principles: The DbContext is a bag with request-specific runtime data and injecting runtime data into constructors causes trouble. Letting your code having a

CodeGo.net>如何配置Autofac解析CQRS处理程序并在Web API项目中编写其查询调度程序

我在Project1的QUERY端有以下内容,主要包含接口 public interface IQueryResult {} public interface IQuery<TResult> where TResult : IQueryResult {} public interface IQueryHandler<TQuery, TResult> where TQuery : IQuery<TResult> where TResult : IQu

php-Laravel自动注入和在构造函数主体中手动指定依赖项之间有什么区别?

我在Laravel项目中使用存储库模式.官方文档except for this snippet中并没有真正解释这种模式: You may type-hint a repository defined by your application in a controller’s constructor. The repository will automatically be resolved and injected into the class. 根

我如何在StructureMap的ObjectFactory中处置每个实例对象?

我在项目中使用StructureMap,当应用程序完成运行时,我需要在实现IDisposable的ObjectFactory内的所有Singleton实例上调用Dispose()方法. 无论如何,我找不到通过StructureMap API进行的操作. 我的另一个想法是获得对每个实例的引用,然后自己调用它,但是我无法弄清楚如何遍历所有实

c#-使用结构化映射的命名会话实例策略进行Setter insection

我正在使用结构图,并想将实例(由容器构造)注入控制器的属性中.实例应命名并存储在http会话上下文容器中. 在我的应用程序的先前版本中,我使用了自定义DI框架,并且可以很容易地进行如下操作: public class MyController : Controller { [InjectSession("MySessionInstanceKey")]

java-为什么关闭Avalon-Framework?

我已经说过新项目的工作.并开始调查所使用的所有应用程序.我发现了一个使用avalon项目的应用程序(avalon框架,avalon-excalibur,avalon存储库等).当我发现那些项目被关闭时,我感到非常惊讶. 这些技术对我来说是新手.不幸的是,我没有找到关闭它们的原因.我知道他们实现了控制反转(Io

CQ5 Spring整合

有什么办法可以将CQ5平台与Spring框架进行集成? 我想使用Spring IoC功能使我的代码更加清晰和高效. 更新 你好,再次,似乎我找到了解决方案.此处的人开发了Slice framework,它真正消除了很多代码,并使CQ5开发更加容易.解决方法:您可能想要检出Eclipse Gemini Blueprint,或者它的原始

什么时候去构造器注入,什么时候去Spring注入参数

我比较新鲜,最近刚开始学习Spring.在Spring依赖注入中,我们 可以通过两种方式注入bean,一种是通过构造函数,另一种是通过setter方法.我的问题是,在什么情况下构造函数注入更好,并且在什么情况下使用setter方法注入效果更好.我的重点只在哪里使用?如果可能,请给我一个例子.解决方法:

java-通过服务替代方案的插件体系结构

我正在寻找一种实现基于插件的Android应用程序的方法,结果发现this great article描述了一种基于服务的插件方法. 我尝试这种基于服务的插件体系结构的目标是: >避免将其他模块(“插件”)静态链接到核心应用程序. >避免分发核心应用程序或库的源代码.>(可选)通过Proguard传递核心应

java-执行时的@Autowired方法

我有一个BaseDaoImpl类,它具有以下方法: @Autowired public void initSessionFactory(@Qualifier("sqlSessionFactory") SqlSessionFactory sqlSessionFactory) { super.setSqlSessionFactory(sqlSessionFactory); System.out.println("------ ok ------");

为何在Ioc容器(如Pimple)中使用匿名函数

我知道在Pimple容器中,依赖项被声明为 $container = new Pimple(); $container['db'] = function (){ return new SomeClass; }; 我的问题是,如果我只是这样将依赖项声明为简单数组,该怎么办? $container = new Pimple(); $container['db'] = new SomeClass; 有什么区别?解

c#-在Simple Injector中使用运行时数据获取实例

我有一个基于数据库中的用户配置来构建其用户界面的应用程序.我创建了一个名为IAction的接口,它看起来像这样; public interface IAction { ActionType ActionType { get; } bool CanExecute { get; } void Configure(ActionConfigDto config); void Execute(); }

java-如何选择将什么实现注入自动构造函数

说我有一个界面 interface IPerson {...} 我有此接口的两种实现 @Component class Programmer implements IPerson {...} @Component class LionTamer implements IPerson {...} 说我有一个使用Autowire注入的课程 @Component class SomethingThatDoesStuff { @Autowir