我正在设置一个Sharepoint Web部件,用于跟踪各种产品的语言翻译。我可以创建翻译,现在我正在尝试重新填充表单控件,如果有人选择已经有翻译的项目,即他们选择“French-ProductX”并且各种texbox填充该翻译的数据/产品
我的LINQ查询正在提取正确的数据(itemname是用户在下拉菜单中选择的产品)。
var query = from translation in Translations
where (Convert.ToString(translation.Name)) == itemname
select translation;
我可以将查询绑定到网格,看看我得到了正确的数据,但之后我就陷入了困境。有两个字段(开头)我想拉,“描述”和“功能”作为字符串并填充相应的asp:TextBoxes。
我尝试转换为数组,它仍然正确绑定,但它没有索引字段,它被视为单个类型的翻译项目。
我尝试了IEnumerable查询并转换为数据视图,但是我在WHERE子句上遇到了无法解决的错误。
我试过这个,但VS说“myitem”是一个未分配的局部变量。
var query = from translation in Translations
where (Convert.ToString(translation.Name)) == itemname
select new { myitem = translation.Description, features = translation.Features };
ItemDescription.Text = myitem;
这看起来应该是一件简单的事情,我在这里错过了什么?
答案 0 :(得分:0)
正在发生的是你正在获得一个具有myitem和功能属性的匿名类型的IEnumerable。
您需要将最后一行更改为:
ItemDescription.Text = query.First().myitem;