我有一个 SQL 表,其中包含一个 XML 字段。
我想要做的是从每个 XML 字段的数据中按根元素的属性排序的 SQL 表中获取所有数据。
所以我有一个带有“userid”(guid)、一个“description”(xml)和一个“type”(int)的项目表。
单个记录如下所示:
1205159E-B4F9-41A9-955E-A3554AF1F21A
1
<book displayText="new book">
<txtTitle>new book</txtTitle>
<txtSubTitle>book 1</txtSubTitle>
<txtAuthor>book 1 author</txtAuthor>
</book>
我正在尝试按“displayText”返回排序列表..基于简单文本的排序..
我试过这个
return (from i in mContext.Items
where i.Type == Type
&& i.UserID == UserID
orderby (string)i.Description.Attribute("displayName")
select i).ToList();
但我不断得到:方法'System.Xml.Linq.XAttribute Attribute(System.Xml.Linq.XName)'不支持SQL转换
我对 linq 的要求太高了吗????当然不是..还是我应该硬着头皮创建一个 sql sproc 并在数据库中执行它..???
提前致谢..