在实体框架模型中创建复合属性?

Dav*_*key 3 vb.net asp.net entity-framework entity-framework-4

我有两个属性("FIRST_NAME"和"LAST_NAME")我需要作为单个属性访问(例如"FULL_NAME").有没有办法让我向我的实体模型添加一个属性,其中包含FIRST_NAME和LAST_NAME的组合值?

Sla*_*uma 9

由于EF4创建的模型类通常是partial类,因此您可以选择使用其他属性和方法在单独的文件中扩展类.在那里,您可以添加只有Getter的只读属性来返回您的组合全名:

public partial class Person
{
    public string FullName
    {
        get
        {
            return string.Concat(FirstName, " ", LastName);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是一个仅在您的模型类中但未映射到数据库的属性,它不作为数据库中的列存在.因为您在单独的文件中创建了部分类的这一部分,所以如果您应该更改模型,则不会被模型设计者触摸和覆盖.