C# - VS 2017 - LINQ to Entities 我需要拉取一些數據,逐步通過每個項目,並且如果它符合某個標準,則更改一個標誌。linq更改結果集的值
我知道這是因爲匿名類型 - 我已經閱讀了幾篇關於它的文章,但我不知道如何解決它。
我需要改變從假到真。 這裏就是我得到的數據:
var RMA_stops_all = (from rma in rDb.DistributionStopInformations
join line in rDb.DistributionLineItems on rma.UniqueIdNo equals line.UniqueIdNo
where line.RmaNumber != null
&& (line.DatetimeCreated > Convert.ToDateTime(dateToCheck_rma)
&& line.DatetimeCreated < Convert.ToDateTime(dateToCheck_rma).AddDays(7))
&& rma.CustomerNo == TNGCustNo
select new
{
line.DatetimeCreated,
rma.UniqueIdNo,
line.RmaNumber,
line.RmaOriginalUniqueId,
line.ItemSequenceNo,
line.ItemNumber,
good = false
}).ToArray();
和這裏是我經歷的每一項步驟:
foreach (var testRma in RMA_stops_all)
{
if (testRma.RmaNumber.Contains("/078"))
{
testRma.good = true;
}
}
錯誤說:
「屬性或索引「匿名類型:DateTime?DatetimeCreated, decimal UniqueIdNo,string RmaNumber,decimal?RmaOriginalUniqueId, decimal ItemSequenceNo,string ItemNumber,bool good> .good'can not被 分配到 - 它是隻讀」
我需要改變我的LINQ
還是我foreach
?
這應該沒問題,但正如我所說的,您在查詢中使用過濾器「where line.RmaNumber!= null」,因此無論如何都不會得到空值。你可以把這個部分留下。 –
謝謝你...一個更多的澄清 - 任何問題與我使用當前字段名稱 - IE:UniqueIdNo = rma.UniqueIdNo與uniqueID和RmaNumber與rmaNumber? –
無論什麼名字適合你,我只是習慣於明確地命名它們。 –