我想要一个名为“Message”的映射类。这个类应该包括一个唯一的 id、标题、文本以及关于发送者和接收者的信息。我需要他们的用户 ID 和他们的名字,所以我创建了另一个名为“用户”的类。这个类包括这两个属性(稍后我将为这个类创建一些方法并在不同的类中使用它,所以我不能只使用类“消息”)。
这是我的代码
public class User
{
public virtual Guid Id { get; set; }
public virtual string Name { get; set; }
}
public class Message
{
public virtual Guid Id { get; set; }
public User sender;
public User receiver;
public virtual string subject { get; set; }
public virtual string text { get; set; }
}
public class MessageMap : ClassMap<Message>, IMappedEntity
{
public MessageMap()
{
Id(x => x.Id, "MessageId");
Map(x => x.sender.Id, "SenderId");
Map(x => x.receiver.Id, "ReceiverId");
Map(x => x.subject);
Map(x => x.text);
}
}
如您所见,我只想保存发送者和接收者的用户 ID,而不是他们的姓名。因为 x.Id、x.sender.Id 和 x.receiver.Id 具有属性“Id”,所以我在数据库中为它们写了一个特定的名称。但是,如果我尝试加载该站点,则会出现此错误:已添加时尝试添加属性“Id”。,即使在我确定列的名称后它们不再是名为“Id”的属性...
你能给我一个提示我做错了什么吗?