**关闭。**此题需要debugging details。目前不接受答复。
编辑问题以包括desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将帮助其他人回答这个问题。
6年前关闭。
这篇文章是编辑并提交审查3天前.
Improve this question
我想得到身份证,但我只有名字。我的代码看起来像这样:
var comments = new List<Comments>
{
new Comments{
CommunityId = community.FirstOrDefault(comid => comid.IdCommunity.Where(comid.CommunityName == "TestCommunity")),
}
};
Comments是一个类:
public class Comments
{
public int IdComment { get; set; }
public DateTime Timestamp { get; set; }
public string Text { get; set; }
public int UserId { get; set; }
public int CommunityId { get; set; }
}
社区也是:
public class Community
{
public int IdCommunity { get; set; }
public string CommunityName { get; set; }
public Pictures Picture { get; set; }
}
但是在C#中,where
语句在这个场景中并不存在。
2条答案
按热度按时间mkshixfv1#
尝试:
4dbbbstv2#
当你使用linq时,首先要尝试简化逻辑,并在步骤上打破它。
因此,首先,您需要使用CommunityName查找所有元素,Where语句将有助于此:
现在在commList中,我们得到了它们。第二,你需要一个新的数组(IEnumerable)和Ids:
就这样。你的下一步是先做一个记录:
现在你有了raw id,raw因为它可能是null。您需要检查它是否为Null:
上面记录可以简化为:
现在只需一步一步地加入所有linqs: