相关疑难解决方法(0)

Ninject - 如何以及何时注射

对于DI和ninject来说,我是一个新手,我正在努力解决实际注入何时发生以及如何开始绑定的问题.

我已经在我的Web应用程序中使用它并且它在那里工作正常,但现在我想在类库中使用注入.

说我有这样一个类:

public class TestClass
{
    [Inject]
    public IRoleRepository RoleRepository { get; set; }
    [Inject]
    public ISiteRepository SiteRepository { get; set; }
    [Inject]
    public IUserRepository UserRepository { get; set; }

    private readonly string _fileName;

    public TestClass(string fileName)
    {
        _fileName = fileName;
    }

    public void ImportData()
    {
        var user = UserRepository.GetByUserName("myname");
        var role = RoleRepository.GetByRoleName("myname");
        var site = SiteRepository.GetByID(15);
        // Use file etc
    }

}
Run Code Online (Sandbox Code Playgroud)

我想在这里使用属性注入,因为我需要在构造函数中传入一个文件名.我是否正确说,如果我需要传入一个构造函数参数,我不能使用构造函数注入?如果我可以使用带有附加参数的构造函数注入,我该如何传递这些参数?

我有一个由Test类使用的控制台应用程序,如下所示:

class Program
{
    static void Main(string[] args)
    {
        // NinjectRepositoryModule Binds my IRoleRepository …
Run Code Online (Sandbox Code Playgroud)

dependency-injection ninject

18
推荐指数
2
解决办法
2万
查看次数

标签 统计

dependency-injection ×1

ninject ×1