更新: 澄清一下,我不能以任何方式修改数据库本身。无法更改列名或运行代码优先迁移等。我需要一个纯粹的“客户端”解决方案
我目前有调用存储过程的代码,使用 EF 6.1 中的代码优先,如下所示:
public class LabResult
{
public string lr_drawn_date{ get; set; }
public int? Patient_Code_Id { get; set; }
public int Patient_Id { get; set; }
public string lt_value { get; set; }
public string lt_value_text { get; set; }
public double lt_value_numeric { get; set; }
public string lf_var { get; set; }
}
var idParam = new SqlParameter
{
ParameterName = "Patient_Code_Id",
Value = patientId;
};
var results = Database.SqlQuery<LabResult>("Get_Patient_Lab @Patient_Code_Id", idParam);
return results.ToList();
这行得通,但是我想更改字段的名称,例如。将 lr_drawn_date 更改为更具可读性的 DrawnDate
我尝试添加一个属性,例如
[Column("lr_drawn_date")]
public string DrawnDate {get; set;}
但这什么都不做...相反,DrawnDate
只是空的。
知道怎么做吗?
最佳答案
如果您使用 Code First,您只需重命名您的对象属性并从程序包管理器控制台运行 Update-Database
命令。它将 Entity Framework 迁移应用于您的数据库。
关于c# - 重命名存储过程导致 Entity Framework 代码优先,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26809758/