2013-11-15 29 views
0

我通过直接通过ADO.NET连接到数据库来消除使用非常慢的Web服务。我正在执行的SP返回结果为XML(对于XML自动),我正在寻找将响应存储为字符串。 ExecuteScaler会工作还是他们更好的方法。从存储过程作为字符串的ADO.NET结果

SqlCommand cmd = new SqlCommand("iweb_spx_controls_attributes", sqlConn); 
cmd.Parameters.Add(new SqlParameter("@page_idASPX", pageID)); 
cmd.Parameters.Add(new SqlParameter("@user_id", userID)); 
cmd.CommandType = CommandType.StoredProcedure; 

string reSults = (string)cmd.ExecuteScalar(); 
return reSults; 
+0

输出参数? – terrybozzio

回答

0

另一种方法是使用SqlCommand.ExecuteXmlReader()方法,该方法可以更好地控制如何解释结果集(并且如果您有大量Xml Blob发送回来,性能可能会更好)。