祝大家有美好的一天!
目前在 asp-mvc 2 中使用 Linq to Sql 处理数据库的项目。
我在 asp mvc 中看到很多关于 Linq to sql 的文档,我的问题是,我究竟在哪里访问我的数据上下文?性能更好的地方在哪里?
例如,我有MyDBDataContext
类
我可以在我的控制器中定义
public class ImaginaryController : Controller
{
MyDBDataContext context = new MyDBDataContext ();
public ActionResult Index()
{
var list = // some code to read context
return View(list);
}
}
.......
或者,在行动方法中
public class ImaginaryController : Controller
{
public ActionResult Index()
{
MyDBDataContext context = new MyDBDataContext ();
var list = /* some code to read context */;
return View(list);
}
public ActionResult Create()
{
//but create need reference
MyDBDataContext context = new MyDBDataContext ();
var list = /* some code to read context */;
return View(list);
}
}
另一种选择是创建一个类来访问数据
public class AccesToBD{
//maybe
private MyDBDataContext current;
public static MyDBDataContext GetContext(){
return current;
}
}
或者更复杂的东西,比如在 C# 中实现单例模式
最好的解决方案是什么?为什么?感谢您的回答。