在我的代码优先模型中,我试图在某些情况下删除字段。我的项目正在使用Mongo和SQL来存储数据,目前,我的团队不确定是否在某些DB中存储某些实体。结果,我一直在创建的模型继承自名为MongoEntity
的类,以支持两个数据库。但是,在我的实体框架代码中,我想排除这些属性,因为它们是Mongo特有的。
// IDocument is for Mongo migrations
public class MongoEntity : IMongoEntity, IDocument
{
[BsonId]
public ObjectId Id { get; set; }
public DocumentVersion Version { get; set; }
}
// Example record structure
public class Property : MongoEntity
{
[Key]
public int PropertyId { get; set; }
[BsonDateTimeOptions(Kind = DateTimeKind.Utc)]
public DateTime BuildYear { get; set; }
public double SquareFootage { get; set; }
public decimal PricePerSquareFoot { get; set; }
public decimal PurchasePrice { get; set; }
}
我可以在[NotMapped]
上添加一个MongoEntity
属性,但是我更希望将任何EF代码保留在它之外。因此,我正在寻找一种通过EF构建器实现这种目标的方法。可能吗?