在 Azure WebJobs 中使用 Ninject 但无法传递我的数据库客户端
Using Ninject in an Azure WebJobs but can't pass my db client
我在新的 Azure WebJobs 项目中使用 Ninject。我的一个存储库需要传递 Db 客户端。我如何通过这个客户端?
我的绑定 class 是:
public class NinjectBindings : Ninject.Modules.NinjectModule
{
public override void Load()
{
Bind<IMyRepository>().To<MyRepository>();
}
}
我在控制台应用程序中的主要功能如下所示:
static void Main()
{
var kernel = new StandardKernel();
kernel.Load(Assembly.GetExecutingAssembly());
var config = new Configuration();
config.AddJsonFile("appsettings.json");
DbClient _dbClient = new DbClient(config);
IMyRepository myRepository = kernel.Get<IMyRepository>(); // This is where I get an error
}
我的存储库代码是这样的,它需要 DbClient
public class MyRepository : IMyRepository
{
private DbClient _client;
public MyRepository(DbClient client)
{
_client = client;
}
}
您需要为您的 DbClient 设置绑定。
我建议在发布组件时保持谨慎。我还没有看到一个很好的 ninject 网络作业示例,所以我手动连接了。但这只是我的想法...
我在新的 Azure WebJobs 项目中使用 Ninject。我的一个存储库需要传递 Db 客户端。我如何通过这个客户端?
我的绑定 class 是:
public class NinjectBindings : Ninject.Modules.NinjectModule
{
public override void Load()
{
Bind<IMyRepository>().To<MyRepository>();
}
}
我在控制台应用程序中的主要功能如下所示:
static void Main()
{
var kernel = new StandardKernel();
kernel.Load(Assembly.GetExecutingAssembly());
var config = new Configuration();
config.AddJsonFile("appsettings.json");
DbClient _dbClient = new DbClient(config);
IMyRepository myRepository = kernel.Get<IMyRepository>(); // This is where I get an error
}
我的存储库代码是这样的,它需要 DbClient
public class MyRepository : IMyRepository
{
private DbClient _client;
public MyRepository(DbClient client)
{
_client = client;
}
}
您需要为您的 DbClient 设置绑定。
我建议在发布组件时保持谨慎。我还没有看到一个很好的 ninject 网络作业示例,所以我手动连接了。但这只是我的想法...