如何将存储过程单个结果集与单个 class 对象结果绑定?
How do I bind stored procedure single result set with single class object result?
我有一个存储过程 returns 以下结果集:
Id : int
Name : string
Image : string
Address : string
代码:
public class SPResultSet
{
public int Id { get; set; }
public string Name { get; set; }
public string Image { get; set; }
//other additional properties
}
var data = ctx.Database
.SqlQuery<SPResultSet>("[dbo].[GET_Data] params", sqlParameters)
.FirstOrDefault();
错误:
System.ArgumentException: 'No mapping exists from object type System.Collections.Generic.List`1[[System.Data.SqlClient.SqlParameter, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] to a known managed provider native type.'
如何将存储过程的单个结果集与单个 class 对象结果绑定?
注意:存储过程returns只有1行数据。
您不应将参数作为列表传递,而应将每个参数传递给存储过程。
或者在您的情况下它可以作为 sqlParameters.ToArray()
传递。
注意: 如果您提供完整的代码以及您传递的参数和存储过程,那就太好了。
我有一个存储过程 returns 以下结果集:
Id : int
Name : string
Image : string
Address : string
代码:
public class SPResultSet
{
public int Id { get; set; }
public string Name { get; set; }
public string Image { get; set; }
//other additional properties
}
var data = ctx.Database
.SqlQuery<SPResultSet>("[dbo].[GET_Data] params", sqlParameters)
.FirstOrDefault();
错误:
System.ArgumentException: 'No mapping exists from object type System.Collections.Generic.List`1[[System.Data.SqlClient.SqlParameter, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] to a known managed provider native type.'
如何将存储过程的单个结果集与单个 class 对象结果绑定?
注意:存储过程returns只有1行数据。
您不应将参数作为列表传递,而应将每个参数传递给存储过程。
或者在您的情况下它可以作为 sqlParameters.ToArray()
传递。
注意: 如果您提供完整的代码以及您传递的参数和存储过程,那就太好了。