我有一个像这样的SQL查询:
SELECT
myXmlField.value('(./row/@myAttribute)[1]', 'nVarchar(max)') as myAttribute
FROM myTABLE
Where myID = 640
SQL查询工作正常,但现在,如何从MS SQL Server中的XML字段中提取属性,使用Subsonic?
我正在使用Visual Studio 2005,.net 2.0,C#和SubSonic 2.1。
非常感谢。
答案 0 :(得分:1)
这远远超出亚音速或我能想到的任何其他ORM - 从XML列中选择是一个非常特定于数据库服务器的问题。
最好的办法是创建一个执行该SQL的存储过程,然后让亚音速调用它。
答案 1 :(得分:0)
嗯...我解决了它加载XML字段的值,subsonic将其作为字符串返回到XmlDocument对象中。
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
doc.LoadXml(MyTable.myXmlField); //MyTable entitie created by subsonic.
doc.SelectSingleNode("./row/@myAttribute").Value //Here I get the attribute from the XML field.
还有其他办法吗?