将参数传递给控制器​​,而不是控制器内的方法MVC 5 c#

时间:2015-09-03 20:37:02

标签: c# asp.net-mvc entity-framework controller ado.net

我正在寻找是否有将参数传递给控制器​​本身而不是控制器内部的方法。

我使用带有ADO.NET模型参数的命名连接字符串。这意味着每次调用模型时都必须传递一个参数

MyEntities myentity = new MyEntities(Param);

我们这样做是因为我们公司的每个部门都有自己的镜像SQL服务器,在使用数据时我们需要本地部门数据。

我面临的问题是我无法将连接放在方法之外的模型中,因为它需要一个参数。

我目前要做的是这个

namespace WebApps.Controllers
{
    public class MyController : Controller
    {
            public ActionResult Index(string Param)
            {
                MyEntities myentity = new MyEntities(Param);
                var db = myentity.table;
                return View(db);
            }
    }
}

我想做的是......

namespace WebApps.Controllers
{
    public class MyController : Controller
    {
        MyEntities myentity = new MyEntities(Param);

            public ActionResult Index()
            {
                var db = myentity.table;
                return View(db);
            }
    }
}

这也允许我正确使用dispose方法。我目前无法使用它,因为我需要传递该参数来关闭数据库。 (它不存在于方法之外)

这失败了......

protected override void Dispose(bool disposing)
    {
        if (disposing)
        {
            this.Dispose();
        }
        base.Dispose(disposing);
    }

有人可以告诉我是否可以直接将参数传递给控制器​​?

0 个答案:

没有答案