【发布时间】:2016-08-20 03:20:11
【问题描述】:
我正在尝试通过 Linq-to-SQL 更新数据库。
我有一个名为 Staff_Time_TBL 的表,它有 9 列。我正在尝试更新可能多行的单列记录。
我的 LINQ 查询如下。它从列Section_Data从指定日期到另一个指定日期以及单个员工编号中获取数据。
DatabaseDataContext Sql = new DatabaseDataContext(ConnectionString);
var getList = Sql.Staff_Time_TBLs.Where(
staff => staff.Staff_No == staffNo &&
staff.Date_Data >= dateFrom &&
staff.Date_Data <= dateTo)
.Select(staff => staff.Section_Data).ToList();
然后我将使用foreach 循环来遍历集合并更新数据库,
foreach (var item in getList)
{
item.Section_Data = "myValue";
}
Sql.SubmitChanges();
问题是下面这个,实体Section_Data不存在。
item.Section_Data
所以,我认为我没有正确组合 LINQ 以访问实体?如何修改查询以便访问实体以更新数据库?
【问题讨论】:
-
我猜,但是因为您选择了
staff.Section_Data,所以您不太可能再选择item.Section_Data。也许只是删除代码中的Select(...)部分? -
@DavidG,谢谢你是正确的。非常感谢您的帮助。
标签: c# linq linq-to-sql