1.用了linq后,不需要再写存储过程(小项目),那么dal层里应该做什么。
2.使用linq更改数据,不知道大家是用什么方法。
我用的是在页面new一个对象,将变更的字段改好后,发给后台。然后后台再把那条数据查出来,再对其进行更改。
感觉这样有点重复,如果直接在页面把数据取出更改好,直接submitchange是不是更好?
3.用select new出来的数据只能用IQueryable接口给DataSource,不能tolist对其字段进行更改。
现在我想到的方法是在model里加扩展类,新增属性,在get里调用dal的方法取值。
2.使用linq更改数据,不知道大家是用什么方法。
我用的是在页面new一个对象,将变更的字段改好后,发给后台。然后后台再把那条数据查出来,再对其进行更改。
感觉这样有点重复,如果直接在页面把数据取出更改好,直接submitchange是不是更好?
3.用select new出来的数据只能用IQueryable接口给DataSource,不能tolist对其字段进行更改。
现在我想到的方法是在model里加扩展类,新增属性,在get里调用dal的方法取值。
2.直接把新值传到数据访问层当做参数更改就是了。
3. StudentDataContext sdc = new StudentDataContext();
/// <summary>
/// 查询某些字段至List集合
/// </summary>
public List<STUDENT> GetList()
{
var q = from s in sdc.STUDENT
select new STUDENT{SSEX= s.SSEX,SNAME= s.SNAME};
return q.ToList();
}
我的网站,我的贴:Linq简单三层之DAL层实例!
见笑了~
2.也就是说不用object传递,直接传参数,那么如果参数很多呢?
3.抱歉我没说清楚。我用的是System.Linq.Dynamic,select("new Id")这种形式,不能tolist()
3.第三个问题我不大清楚。我使用时返回结果一般都会是LINQ自动生成的那个类。不会去把结果搞出来再放到list。
2.绝对没有必要前台提交数据后,先去submitchange再重新load数据。你应该明确下:前台数据的更改完全可以在前台更新,在更新前台得同时后台再去更改后台。我个人绝对不推荐再次load数据出来重绑定。
3.第三个问题我不大明白。没用过你那个System.Linq.Dynamic。