使用ajax调用在MVC 5中进行依赖注入

时间:2015-09-26 22:29:17

标签: ajax asp.net-mvc asp.net-mvc-5

所以我最近发现了关于依赖注入并阅读了很多关于利弊的内容,我很好奇,如果它在我的应用程序中使用它会“很好”,因为我找不到像我一样的例子那一刻。

我的应用程序目前100%基于Ajax请求,我的典型控制器如下所示:

public JsonResult Controller()
{

  getStuff from the model

  return JSON(info from controller)

}

对于这种情况,DI是一个不错的选择吗?或者这些好处(如果有的话)是无益的?

PS:我不知道这件事有多重要,但我只使用1个数据库。

1 个答案:

答案 0 :(得分:0)

如果您有一个具有多个依赖项的大型应用程序,那么DI是一个不错的选择。即使您的应用程序相对较小并且只需要注入数据库连接,这也可能是您进入DI的良好起点。

对于您提供的代码示例,假设您正在使用控制器注入并且需要数据库连接,那么您最终会得到类似的内容:

public class MyController
{
    IDatabase database;

    public MyController(IDatabase database)
    {
        this.database = database;
    }

    public JSONResult MyControllerMethod()
    {
        var myData = database.GetData();

        return JSON(myData)
    }
}

然后你需要配置你的DI容器,以便知道要为哪些接口注入哪些具体类 - 根据你使用的框架,这会略有不同。

鉴于您没有太多的使用经验,请记住,当您了解它时,会有一些学习曲线。我假设您正在使用WebAPI进行AJAX调用,在这种情况下,此页面是一个很好的资源,可以帮助您入门 - http://www.asp.net/web-api/overview/advanced/dependency-injection