我创建了一个line
对象,它是一个实体,它具有Tags
我也想设置的导航属性。我想从绑定到Tag
对象的 datagridview 中获取此标签集合:
dgvTags.DataSource = _rs.Tags.Where(x => x.TagGroup.Name == "All Reasons").OrderBy(x => x.Name);
有问题的代码:
Line l = new Line
{
Part = o.Part,
Description = desc,
Price = o.Price.Value,
InvoiceNo = o.InvoiceNo,
Cost = o.Cost.Value,
Comments = txtComment.Text,
Tags = dgvTags.SelectedRows as List<Tag> // <--- needs work here
};
该行显示错误:
错误 5 无法通过引用转换、装箱转换、拆箱转换、包装转换或空类型转换将类型 'System.Windows.Forms.DataGridViewSelectedRowCollection' 转换为 'System.Collections.Generic.List' C:\SVN\RS\fAddLines .cs 142 15 RS
有这样做的正确方法吗?
更新:
我已经能够使用下面的代码实现所需的结果,但仍在寻找正确的方法:
foreach (DataGridViewRow r in dgvTags.SelectedRows)
{
l.Tags.Add(r.DataBoundItem as Tag);
}