我正在使用dapper dot net进行Db调用。
现在我的一个输入参数为Db类型XML
现在我正在执行sp
var param = new DynamicParameters();
param.Add("@TagXML", string.IsNullOrEmpty(student.TagXML)?null:XElement.Parse(student.TagXML));
param.Add("@CustomTagXML", string.IsNullOrEmpty(student.CustomTagXML) ? null : XElement.Parse(student.CustomTagXML));
param.Add("@Return", strRet, direction: ParameterDirection.Output);
param.Add("@RetunErrMsg", strRetMsg, direction: ParameterDirection.Output);
using (var connection = new SqlConnection(ConnectionString))
{
if (connection.State != ConnectionState.Open)
{
connection.Open();
}
connection.Execute("My Sp here", param, commandType: CommandType.StoredProcedure);
}
此代码给我错误:
System.NotSupportedException: The member TagXML of type System.Xml.Linq.XElement cannot be used as a parameter value
at Dapper.SqlMapper.LookupDbType(Type type, String name, Boolean demand, ITypeHandler& handler)
为什么会出现此错误? 如何在StoredProcedure中使用XML类型的输入。