我想使用一个类示例:
public class ClassA
{
public int ID {get;set;}
public string Name {get;set;}
}
作为要传递给存储过程的参数对象。
这将是我的电话样本
List<ClassB> result = this.Database.SqlQuery<ClassB>("GetSomeList", ClassA).ToList<ClassB>();
存储过程中的参数名称将匹配&#34; ClassA&#34;的属性。
如果删除参数对象(ClassA),则调用正常并返回正确的结果。我宁愿不使用Entityframework设计器或将任何数据库属性添加到我的实体,因为它们是可重用的组件。 此外,如果此参数对象可用于保存也很好的输出参数。 我还没有找到任何关于使用POCO作为参数对象的好文档。
这与EntityFramework6 MVC5
有关答案 0 :(得分:0)
public static class DbExtensions {
public static object[] ToObjectArray(this ClassA ca) {
return new object[]{ca.ID,ca.Name};
}
}
List<ClassB> result=this.Database
.SqlQuery<ClassB>("GetSomeList", ClassA.ToObjectArray())
.ToList<ClassB>();