2
我正在使用代码优先的方法。我创建了我自己的用户模型和成员资格提供者。我的模型有以下一些领域:从数据库中“隐藏”列,但不在实体框架中查看
[Table("mytable")]
public class MyUser
{
[Key]
public int UserId { get; set; } // Auto generated
[Required]
[DataType(DataType.EmailAddress)]
[Display(Name = "Email address")]
public string Email { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[DataType(DataType.Password)]
[Display(Name = "Confirm password")]
public string ConfirmPassword { get; set; }
[Display(Name = "Your name/company name")]
public string Name { get; set; }
}
的问题是,我没有在我的数据库ConfirmPassword
柱(原因很明显)。我如何从数据库中“隐藏”它,但允许视图能够看到它的使用。将其更改为private
会将其从数据库中隐藏起来,但该视图不像那样。
如何让实体框架忽略此字段?
虽然这确实起作用......它并没有在执行中。数据模型仍然试图验证这两个字段(即使在我加密密码后)。我结束了两个模型。一个用于DB,一个用于视图。 – 2012-03-15 18:30:27
如果您在EF和UI之间共享模型,则必须关闭EF中的验证。 – 2012-03-15 19:01:18