.net core StructureMap GetInstance传递参数

.net core StructureMap GetInstance传递参数,.net-core,structuremap,.net Core,Structuremap,如何使用StructureMap将string connectionString、ILogger记录器传递到应用程序类 我可以创造 _application = container.GetInstance<Application>(); \u application=container.GetInstance(); 但是我不能通过params static void Main(string[] args) { var connectionString = "...";

如何使用StructureMap将string connectionString、ILogger记录器传递到应用程序类

我可以创造

_application = container.GetInstance<Application>();
\u application=container.GetInstance();
但是我不能通过params

static void Main(string[] args)
{
    var connectionString = "...";
    ILogger logger = xxxx;

    var container = Container.For<ConsoleRegistry>();
    _application = container.GetInstance<Application>();
    _application.Start(appSettings.RunCandleFetch);
    Console.ReadLine();
}

public class ConsoleRegistry : Registry
{
    public ConsoleRegistry()
    {
        Scan(scan =>
        {
            scan.TheCallingAssembly();
            scan.WithDefaultConventions();
        });
    }
}

private class Application
{
    public Application(string connectionString, ILogger logger)
    {
    ...
    }
}
static void Main(字符串[]args)
{
var connectionString=“…”;
ILogger记录器=xxxx;
var container=container.For();
_application=container.GetInstance();
_application.Start(appSettings.RunCandleFetch);
Console.ReadLine();
}
公共类控制台注册表:注册表
{
公共控制台注册表()
{
扫描(扫描=>
{
扫描。卡入总成();
scan.WithDefaultConventions();
});
}
}
私有类应用程序
{
公共应用程序(字符串连接字符串、ILogger记录器)
{
...
}
}

此文档页应该非常有用:

这应该适合您:

var args=new explicitTargets();
args.SetArg(“connectionString”,connectionString);
参数SetArg(“记录器”,记录器);
var app=容器
.GetInstance(args);

此文档页应该非常有用:

这应该适合您:

var args=new explicitTargets();
args.SetArg(“connectionString”,connectionString);
参数SetArg(“记录器”,记录器);
var app=容器
.GetInstance(args);

您计划从何处获取连接字符串?在主方法中,我正在阅读此内容。您计划从何处获取连接字符串?在主方法中,我正在阅读此内容