使用 Dapper 扩展时导航属性

本文关键字:导航 属性 扩展 Dapper 使用 | 更新日期: 2023-09-27 17:56:53

Im 使用 DapperExtensions 库进行简单的 CRUD 操作。当我向模型添加导航属性时,我收到一条错误消息,指出此列不在数据库中。您能否以任何方式更改此设置,以便 Dapper 扩展忽略此属性?

我的模型示例

public class Order : EntityBase
{
    public int OrderId { get; set; }
    public int MarketId { get; set; }
    public int ModelId { get; set; }
    public int ContactId { get; set; }
    public string Project { get; set; }
    public decimal Undertaking { get; set; }
    public virtual Model Model { get; set; }
    public virtual Contact Contact { get; set; }
}

使用 Dapper 扩展时导航属性

使用属性上方的 Write 属性

[Write(false)]
  1. 添加扩展包
  2. AutoMap(); 将映射所有其他属性,只要该字段具有相同的名称。
public class CustomMapper : DapperExtensions.Mapper.ClassMapper<Photo>
    {
        public CustomMapper()
        {
           Table("TableName if diffrent than the Model calss name");
           Map(f => f.SomePropertyIDontCareAbout).Ignore();
           AutoMap();
        }
    }