我在我的數據庫中有日誌以檢查產品的分類。批准分類的方法對於每個日誌系統都是相同的,儘管它們存在於我的數據庫的不同表中。爲了簡化事情有點,我決定創建一個通用的方法,如:使用模型的通用方法
[NonAction]
public void Approve<Log>(Log log, string userId) where Log : ProductLog, CategoryLog, SubCategoryLog
{
log.approved = true;
log.approvedBy = userId;
}
凡ProductLog,CategoryLog,SubCategoryLog是從我的Asp.Net MVC項目模型。
的問題是,我得到以下錯誤:
The class type constraint 'CategoryLog' must come before any other constraints
我得到同樣的錯誤SubCategoryLog
注意ProductLog,SubCategoryLog和CategoryLog從實體框架數據庫首先生成的類。
有人可以幫我嗎?
做'ProductLog','CategoryLog',或'SubCategoryLog'所有從commo繼承n基類還是實現一個通用接口,比如'ILog'?如果是這樣,那應該是你的泛型方法的限制。如果他們沒有其中之一,那就添加一個! – mason
你有界面嗎? 'ILog'? –
不,我不知道。你能幫助一個代碼被剪斷嗎?我閱讀了C#手冊中的接口,但我無法弄清楚如何使其適應我的問題。此外,我使用的是數據庫優先,我不想改變自動生成的模型。 –