我无法执行SQL QUERY(字符串查询) 错误信息: 数据阅读器有多个字段。多个字段对EDM基元类型无效。 它如何修复????
Department class code here:
public class Department
{
[Key]
public Int64 DepartmentID { get; set; }
public string DepartmentName { get; set; }
public Int64 P_ID { get; set; }
}
Person class code here:
public class PersonInfo
{
[Key]
public Int64 P_ID { get; set; }
public string PersonName { get; set; }
public string Register_Num { get; set; }
}
using (var db = new EntityContext())
{
try
{
int result = 0;
string query = @"
SELECT P.P_ID, D.DepartmentName FROM PersonInfo AS P
INNER JOIN Department AS D ON P.P_ID = D.P_ID";
var exists = db.Database
.SqlQuery<Department>(query).ToList();
foreach (var item in exists)
{
MessageBox.Show(string.Format("{0}", item));
}
}
catch (Exception ex)
{
MessageBox.Show(ex.InnerException.InnerException.Message);
}
}
答案 0 :(得分:1)
当您尝试将结果集映射到Department Model类时,因此您需要使用sql查询返回departmentid。请注意,所有列名称都应与您的部门类别的属性完全匹配。