1

我尝试在我的项目中使用 linq。

所以我有一个关于使用 linq 拆分和保留列表的问题。

我将 Id 值作为字符串。

"1","2","3","4"

我可以在item.StringIdValues中看到上面的 Id 值

我需要拆分为逗号 ID 值,然后我想转换为 int32 并匹配 UserId。

foreach (var item in MyDatas)
{
var Something = item.StringValues; 
int FilteredId == // I want to split as comma and convert values to int32.
var result=context.Users.Any(s=>s.UserId==FilteredId).select(s>s.UserName).firstordefault();
//Than Keep above result Id's in list.

List<Something>=result;
}

任何帮助将不胜感激。

谢谢。

4

1 回答 1

2

您需要拆分然后解析,然后选择:

List<int> numericItems = item.StringIdValues
    .Split(',', StringSplitOptions.RemoveEmptyEntries)
    .Select(i => int.Parse(i)).ToList()

要匹配用户 ID,请执行以下操作:

int FilteredId = item.StringIdValues
    .Split(',', StringSplitOptions.RemoveEmptyEntries)
    .Select(i => int.Parse(i))
    .First(i => i == UserId);

如果列表中可能不存在,您可能希望将其更改为FirstOrDefault并对其进行空检查。UserId

于 2013-10-02T15:26:59.947 回答