1

我有 2 个实体需要映射在一起。由于它们都是数据库视图,因此在技术上都不是主键。

 [Table("Name")]
    public class MemberInfo
    {
        [Key]
        [Column("id")]
        public string MemberId { get; set; }

        [Column("first_name")]
        public string FirstName { get; set; }

        [Column("last_name")]
        public string LastName { get; set; }

        public string Designation { get; set; }

        [Column("full_name")]
        public string FullName { get; set; }
    }



public class ChangeLog
    {
        [Column("ID")]
        public int ID { get; set; }

        [Column("asset_id")]
        public virtual Asset AssetID { get; set; }

        [Column("member_id")]
        public int MemberID { get; set; }

        public virtual MemberInfo MemberInfo { get; set; }

        [Column("comment")]
        public string Comment { get; set; }

        [Column("createdDT")]
        public DateTime CreatedDT { get; set; }
    }

如果我尝试从 ChangeLog 访问 MemberInfo,我会收到一条错误消息:

A relationship multiplicity constraint violation occurred: An EntityReference can have no more than one related object, but the query returned more than one related object. This is a non-recoverable error.

MemberInfo 的 MemberID 字段是唯一的。我需要能够通过 MemberInfo 属性从 ChangeLog 访问 MemberInfo 属性。

4

1 回答 1

1

此错误是针对 ChangeLog 类中的 Asset 属性的,您没有编写该类,我认为通过更改该属性可以修复此错误

于 2012-12-29T10:39:56.200 回答