从Sharepoint Web部件中的LINQ查询中获取字符串?

时间:2013-03-01 22:16:32

标签: linq sharepoint web-parts

我正在设置一个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;

这看起来应该是一件简单的事情,我在这里错过了什么?

1 个答案:

答案 0 :(得分:0)

正在发生的是你正在获得一个具有myitem和功能属性的匿名类型的IEnumerable。

您需要将最后一行更改为:

ItemDescription.Text = query.First().myitem;