在我的项目中,我使用MVC4和一些使用Entity作为orm的外部数据库。
我决定使用MVC提供的成员身份,所以我只是在默认ConnectionString
中更改为指向我的外部数据库。
然后,当我第一次启动应用程序时,添加了几个表,到目前为止一切都很好。现在,问题是,当我将新创建的userProfile表映射到我的dataContext模型时,我发生了冲突,因为这个表已经存在于accountModel中。
帐户模型和我新生成的模型位于同一名称空间中,我不想更改,所以我该怎么办?
这里是由ADO实体模型使用视图添加表方法生成的类:
public partial class UserProfile
{
public UserProfile()
{
this.Predictions = new HashSet<Prediction>();
}
public int UserId { get; set; }
public string UserName { get; set; }
public virtual ICollection<Prediction> Predictions { get; set; }
}
这里来自会员
[Table("UserProfile")]
public partial class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
public string UserName { get; set; }
}
都存在于同一名称空间中,并且存在冲突。
答案 0 :(得分:0)
您可以删除自动生成的类并创建一个分部类来代替扩展AccountModel UserProfile类。
创建一个具有相同名称和相同名称空间的分部类:
public partial class UserProfile
{
public UserProfile()
{
this.Predictions = new HashSet<Prediction>();
}
public virtual ICollection<Prediction> Predictions { get; set; }
}
通过这样做,您将Predictions
属性纳入成员资格UserProfile
类。