在MVC2中访问Linq到Sql数据层

时间:2012-03-30 02:30:57

标签: linq-to-sql asp.net-mvc-2

我对MVC设计模式和访问LinqToSql数据相对较新。基本上我想利用MVC的概念来访问数据(我已经存储在Linq2Sql DataContext中)并将结果填充到gridview。由于代码隐藏文件违背了MVC的目的,我究竟会将我的linq查询置于SELECT数据中,并将其绑定到gridview?

这是我的SELECT代码:          public void getBills()         {

        BillDataContext context = new BillDataContext();
        var bills =
            from b in context.Bill_Items
                select b;

    }

我试过将它放在一个控制器中,但显然无法从控制器中获取我的gridView对象。我正在努力不将代码隐藏文件绑定到该视图并从那里开始。希望有人能够阐明实现这一目标的最佳实践。

1 个答案:

答案 0 :(得分:1)

您可以创建一个包含所有Linq代码的Repository类,并返回您的模型对象。 Ex BillingRepository使用名为GetBillItems(..)

的方法

您可以从控制器调用此存储库类并将模型传递给视图

public ActionResult BillItems()
{
  BillingRepository repository = new BillingRepository();
  var model = repository.GetBilItems();
  return View(model);
}