我正在使用Dapper.net Extensions,並且希望忽略某些屬性而無需編寫完整的自定義映射器。正如你在下面的ClassMapper中看到的,當我真正想做的事情是忽略一個屬性時,會有很多冗餘代碼。什麼是實現這一目標的最佳方式?如何使用Dapper.net擴展忽略類屬性?
我喜歡這裏提供的答案https://stackoverflow.com/a/14649356但我找不到'寫'定義的名稱空間。
public class Photo : CRUD, EntityElement
{
public Int32 PhotoId { get; set; }
public Guid ObjectKey { get; set; }
public Int16 Width { get; set; }
public Int16 Height { get; set; }
public EntityObjectStatus ObjectStatus { get; set; }
public PhotoObjectType PhotoType { get; set; }
public PhotoFormat2 ImageFormat { get; set; }
public Int32 CategoryId { get; set; }
public int SomePropertyIDontCareAbout { get; set; }
}
public class CustomMapper : DapperExtensions.Mapper.ClassMapper<Photo>
{
public CustomMapper()
{
Map(x => x.PhotoId).Column("PhotoId").Key(KeyType.Identity);
Map(x => x.ObjectKey).Column("ObjectKey");
Map(x => x.Width).Column("Width");
Map(x => x.Height).Column("Height");
Map(x => x.ObjectStatus).Column("ObjectStatus");
Map(x => x.PhotoType).Column("PhotoType");
Map(x => x.ImageFormat).Column("ImageFormat");
Map(x => x.CategoryId).Column("CategoryId");
Map(f => f.SomePropertyIDontCareAbout).Ignore();
}
}
的Dapper.Contrib包裝上的NuGet ISN」 t似乎更新了lates代碼。我已聯繫店主以更新它。 –
...現在它已更新,希望將來會保持更新。 –