我正在使用 datareader 通过存储过程获取表的记录值。 但是当使用 datareader.getstring(2) 来获取特定列的值时,返回的字符串是截断(的其余部分getstrings 正在返回完整的值)。 任何人都可以指导我分析这个吗?
答案 0 :(得分:2)
使用SqlDataReader对象时,XML数据行将被截断为2,033个字符。要解决此问题,请使用ExecuteXmlReader方法读取FOR XML查询。有关如何将ExecuteXmlReader与SQL Server FOR XML查询一起使用的其他信息 https://support.microsoft.com/en-us/kb/310378 https://support.microsoft.com/en-us/kb/316701
答案 1 :(得分:0)
如下更改您的Db逻辑,
Declare @xmldata xml
set @xmldata =(<your select query>
FOR XML AUTO)
select @xmldata as returnXml
然后从c#中读取列 returnXml ,即objReader [0]