用新值更新列中的每个记录

时间:2019-02-10 20:26:11

标签: c# linq

我要更新的SQL表中有一个空列。

List<UriDataModel> channelData = new List<UriDataModel>();
for (int i = 0; i < channelNames.Count(); i++)
{
    channelData.Add(new UriDataModel()
    {   SerialNumber = serialNumber[i],                 
        ChannelType = channelUom[i],
        Calculated = calculated[i]
    });
};

我不想插入新记录,我想更新包含其他数据的行中的列。每个频道名称可能有大约80,000条记录。

序列号是唯一的,将包含一个或多个通道。这样序列号321654可以具有六个通道,分别称为channel1,channel2等。计算出的字段是bool

当我这样做时:

db.UriData.AddRange(channelData);
db.SaveChanges();

很显然,这只会添加一条新记录。

我需要通过说些类似的话并更新记录来从数据库中查找记录。

UPDATE ChannelType, Calculated
WHERE SerialNumber ='987654'
AND ChannelName = 'channel1'

我正在考虑仅触发SPROC,但是我想了解如何在LINQ中执行该操作。

0 个答案:

没有答案