所以很明显这对于几个foreach循环来说很容易实现,但是我刚刚开始使用C#经过多年的Java而现在我正在尝试将LINQ填入所有内容中,因为它非常棒.
我有两个ICollections字符串,我想检查一个集合是否包含另一个集合中的任何字符串.换句话说,我想检查两个集合的并集是否为空.
在这种情况下,我实际上并不关心WHICH字符串匹配,只是匹配是否存在.我假设Any是这里的关键方法,但我无法弄清楚如何用它做我想做的事情.我确信解决方案非常简单; 我对构建查询不是很熟悉.
如果以前曾被问过,请道歉; 有一百万种方法来表达它,因此寻找答案已经证明是困难的.
我有一个具有以下属性的viewmodel:
public class AssignSoftwareLicenseViewModel
{
public int LicenseId { get; set; }
public ICollection<SelectableDeviceViewModel> Devices { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
SelectableDeviceViewModel的简化版本是这样的:
public class SelectableDeviceViewModel
{
public int DeviceInstanceId { get; set; }
public bool IsSelected { get; set; }
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在我的视图中,我试图在输入表单中显示Devices属性的可编辑复选框列表.目前,我的View看起来像这样:
@using (Html.BeginForm())
{
@Html.HiddenFor(x => Model.LicenseId)
<table>
<tr>
<th>Name</th>
<th></th>
</tr>
@foreach (SelectableDeviceViewModel device in Model.Devices)
{
@Html.HiddenFor(x => device.DeviceInstanceId)
<tr>
<td>@Html.CheckBoxFor(x => device.IsSelected)</td>
<td>@device.Name</td>
</tr>
}
</table>
<input type="submit" …Run Code Online (Sandbox Code Playgroud)