Bur*_*din 0 asp.net entity-framework razor
我正在使用asp.net mvc 4和实体框架代码优先方法.我有以下实体模型
public class User
{
public virtual int Id { get; set; }
public virtual String FirstName { get; set; }
public virtual String MiddleName { get; set; }
public virtual String LastName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
对于用户列表视图页面,我需要显示全名,我试图在用户模型中创建一个get only属性
public virtual String FullName{
get{
return FirstName + " " + MiddleName + " " + LastName;
}
}
Run Code Online (Sandbox Code Playgroud)
但我不确定它是否会起作用,此外我也不希望实体框架将其映射到数据库列.
我是否可以仅为视图使用从其他属性生成的类似get only属性?任何人都可以给我任何关于该做什么的建议吗?
根据您配置域实体的方式,通过DataAnnotations或EntityConfigurationType类,您可以使用[NotMapped] DataAnnotation
public class User
{
public virtual int Id { get; set; }
public virtual String FirstName { get; set; }
public virtual String MiddleName { get; set; }
public virtual String LastName { get; set; }
[NotMapped]
public virtual String FullName
{
get{
return FirstName + " " + MiddleName + " " + LastName;
}
}
}
Run Code Online (Sandbox Code Playgroud)
或者在实现EntityTypeConfiguration的特定类中,您可以将属性设置为由EntityFramework忽略,然后将其添加到OnModelCreating事件中的上下文配置集合中:
public class UserConfiguration : EntityTypeConfiguration<User>
{
public UserConfiguration()
{
Ignore(u=>u.FullName);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2976 次 |
最近记录: |