[英]Models.ApplicationDbContext for all models in an Asp.Net MVC 5 application?
[英]Asp.Net MVC Inserting Same Data Into All Models
我的應用程序中有40多個模型,現在我正在嘗試實現日志記錄系統。 對於第一階段,我想保留所有表中所有行的“創建者”和“創建日期”信息。
我想我可以創建一個包含“ CRDATE”和“ CRBY”屬性的基類,並從該基類創建我的所有模型。 但是我如何編寫一個通用方法來插入CRDATE和CRBY,並刪除boo信息?
這是我的基本模型:
public class BaseModel
{
public DateTime CrDate { get; set; }
public int UserId { get; set; }
public ApplicationUser User { get; set; }
public bool IsDeleted { get; set; }
}
我應該使用通用存儲庫操作嗎?
問候
讓您的基類繼承自包含CrDate和CrBy(也可能出於記錄目的而命名)的接口(例如IBaseModel),而不繼承其他類的專門信息。
它看起來像:
public class BaseModel: IBaseModel
{
public DateTime CrDate { get; set; }
public int UserId { get; set; }
public ApplicationUser User { get; set; }
public bool IsDeleted { get; set; }
}
public interface IBaseModel
{
DateTime CrDate { get; set; }
ApplicationUser User { get; set; }
}
然后,您的通用日志記錄類可以將IBaseModel作為參數並獲取這兩個屬性。
public void LogWhatever(IBaseModel logModel)
{
//...
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.