在数据库中出现两个表
OLD,而不是EF,修改被拒绝
对象(Id,Name)
UserObjects(Id,UserId,ObjectId)
public class UserObject
{
[Key]
public int Id { get; set; }
public Guid UserId { get; set; }
public int ObjectId { get; set; }
[NotMapped]
public string ObjectName { get; set; }
}
有办法用EF填充ObjectName吗?
或者使用SqlCommand并手动填充UserObject?
答案 0 :(得分:0)
我找到并使用了EntityTypeConfiguration
public class Object
{
public int Id { get; set; }
public string Name { get; set; }
}
public class UserObject
{
[Key]
public int Id { get; set; }
public Guid UserId { get; set; }
public int ObjectId { get; set; }
public virtual Object Object { get; set; }
}
public class ObjectConfiguration: EntityTypeConfiguration<Object>
{
public ObjectConfiguration()
{
HasKey(at => new { at.Id});
Property(t => t.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.None);
ToTable("Objects");
Property(t => t.Id).HasColumnName("Id");
Property(t => t.Name).HasColumnName("Name");
}
}