我試圖用一個基類與我的實體框架模型...使用實體框架的基本模型,並呼籲父類的字段
我有以下的基類:
public class BaseModel
{
[Key]
public int Id { get; set; }
public DateTime CreatedDate { get; set; }
public DateTime UpdatedDate { get; set; }
public DateTime? ExpiryDate { get; set; }
public bool IsActive { get; set; }
public Guid CreatedBy { get; set; }
public Guid UpdatedBy { get; set; }
}
然後我有一個類,從它繼承:
public class Family : BaseModel
基本上的話,我希望能夠設置使用類似這些基礎領域:
private void SetBaseData(ref BaseModel baseModel, Guid currentUserId)
{
if (baseModel.Id < 1)
{
baseModel.CreatedDate = _datetime.Now();
baseModel.CreatedBy = currentUserId;
baseModel.IsActive = true;
}
baseModel.UpdatedDate = _datetime.Now();
baseModel.UpdatedBy = currentUserId;
}
然後叫這樣的:
Models.Family efFamily = _mapper.Map(family);
SetBaseData(ref efFamily, family.CurrentUserId);
我得到這個,但我想我; D能夠做到這一點還是我完全下去了錯誤的路線?
Error 27 Argument 1: cannot convert from 'ref FamilyOrganiser.Repository.EntityFramework.Models.Family' to 'ref FamilyOrganiser.Repository.EntityFramework.Models.BaseModel'
你在這裏發佈了正確的代碼嗎? 'SetBaseData'是一個泛型類型參數,但沒有使用它? – DavidG 2014-10-20 20:21:11
道歉問題修正。當我上傳問題時,FF崩潰! – Simon 2014-10-20 20:25:41