C#if LINQ select子句中的statment

mgr*_*ier 1 c# linq

我有一个Linq查询,我需要根据列表中是否存在记录在我的select子句中有一个值.这是我的查询:

var records = (from il in itemList
        join ci in catalogueItemList on il.CatalogueItemID equals ci.CatalogueItemID
        join pd in publicationDataList on il.CatalogueItemID equals pd.CatalogueItemID
        select new { il.ItemID, pd.ISBN, ci.Title, ci.CatalogueItemID, il.LocationID, il.Missing,  }).ToList();
Run Code Online (Sandbox Code Playgroud)

我有一个名为itemCheckoutDictionary的字典,我想要的伪代码是:

if (itemCheckDictionary.ContainsKey(i.itemID)) then "Checked Out" else "In"
Run Code Online (Sandbox Code Playgroud)

我需要在我的select子句中,我不知道如何实现这一点.

Ale*_*kiy 9

你尝试过三元运算符吗?

string s = itemCheckDictionary.ContainsKey(i.itemID) ? "Checked Out" : "In";
Run Code Online (Sandbox Code Playgroud)

  • 从您的链接:_"条件运算符通常(虽然**错误**)称为三元运算符"_;) (5认同)