0

我试图允许用户通过按名称查找来设置关联。

不幸的是,即使我使用的是虚拟,ASP-MVC 4 仍在抱怨对于这个特定的虚拟字段“VesselName”来说这是一个无效的列名。这是错误:

列名“VesselName”无效。
说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.Data.SqlClient.SqlException:列名“VesselName”无效。

这是我的代码:

public int VesselID { get; set; }
public virtual Vessel Vessel { get; set; }
public virtual string VesselName
{
    get
    {
        return Vessel.Name;
    }
    set
    {
        if (value != null)
        {
            // make sure we use upper case
            VesselID = db.Vessels.Where(v => v.Name.Equals(value.ToUpper())).First().ID;
        }
    }
}
4

1 回答 1

0

[NotMapped]您可以使用DataAnnotation在实体框架中拥有“虚拟”或“未映射”属性。程序中使用的虚拟指的是别的东西。

请参阅虚拟方法表。 http://en.wikipedia.org/wiki/Virtual_method_table

于 2013-08-05T16:59:22.800 回答