假设我有以下类及其接口
public class MyService : IMyService
{
int _value;
public MyService (int value)
{
_value = value;
}
}
public class MyClass : IMyClass
{
IMyService _myService;
public MyClass(IMyService myService)
{
_myService = myService;
}
}
步骤1:使用Autofac在测试项目中设置构造函数:
public class Configuration : Autofac.Module
{
protected override void Load(ContainerBuilder builder)
{
builder.RegisterType<MyClass>().As<IMyClass>()
.InstancePerLifetimeScope();
builder.RegisterType<MyService>().As<IMyService>()
.InstancePerLifetimeScope();
}
}
步骤2:设置测试
public class MyApplication
{
readonly int _value = 1234;
private MyClass _myClass;
public MyApplication(IMyClass myClass)
{
_myClass = myClass;
}
}
现在,我如何注入配置器未知但“MyApplication”已知的参数“value”?
在我想要这么做之前
public class MyApplication
{
readonly int _value = 1234;
private MyClass _myClass;
public MyApplication()
{
_myService = new MyService(_value);
_myClass = new MyClass(_myService);
}
}
但是现在我正在尝试我们依赖反转和依赖注入,最终出现了上面描述的问题。
您必须在autofac配置中调用构造函数。
builder.Register((comCont, parameters) => new MyClass(123))
.As<IMyClass>()
.InstancePerLifetimeScope();
是否可以(以及如何)指定依赖于另一个给定参数的值的附加参数? 我有一个电话 ,它定义了要设置的付款方式。 现在:如果是直接借记的,则允许(并且需要)更多参数,例如和。如果是其他参数,例如则需要其他参数。 我想摆脱长参数列表(因为这里遗漏了更多参数),但如上所述对它们进行分组,并记录某些参数仅适用于特殊类型是必需的(并且允许的)。 有什么方法可以描述这个吗? 有没有一种方法可以像一个定义中的所有直接
进入考勤打卡-设置-“我是考勤负责人”-“移交考勤负责人权限”-选择需要移交的成员
我在gradle中使用flyway,我在数据库控制台中手动运行了其中一个迁移,我想运行flyway,但告诉它忽略所有其他迁移版本之间的一个特定迁移版本。可以这样做吗?
我需要把一个项目交给第三个人。该项目使用Maven进行依赖管理,我们安装了一个Nexus存储库管理器。 我认为使用dependency:go offline plugin/goal like生成包含项目所需的所有依赖项的存储库是很容易的 此命令将按预期创建存储库。我将此存储库复制到目标计算机,并将localRepository(settings.xml)设置到存储库文件夹。 尝试在目标计算机上构建
我正在尝试用java制作一个小游戏来完成任务。 我们需要在JFrame窗口中有一个可调整大小的网格,其中包含nxn(n=一些合理的数字,如5或7)字段(在这种情况下,每个字段都是一个按钮),在该字段上有以下规则: 中间的按钮是一个“黑洞”,有两个玩家。每个玩家有N-1艘飞船供他们使用,他们必须将它们移入黑洞。第一个做到这一点的玩家获胜。两个玩家的飞船都是对角排列的,朝向和远离中间(黑洞)。 诀窍是