在Visual Studio 2015中構建MVC視圖腳手架是否有一個原因與包含通用標識的繼承基類無效?簡單的測試用例:MVC視圖腳手架不能使用泛型基類嗎?
public abstract class BaseEntity
{
}
public abstract class Entity<TKey> : BaseEntity
{
public TKey Id { get; set; }
}
public class Country : Entity<int>
{
public string Name { get; set; }
public string CountryCode { get; set; }
}
試圖建立一個腳手架視圖(如列表,創建,編輯,刪除),使用下面的錯誤彈出國家實體結果:
時出錯運行選定的代碼生成器:'方法或操作未實現。'
如果刪除了TKey
類型參數,並Entity
非通用通過定義標識的固定型,然後我可以腳手架的意見。
我知道在這個簡單的例子中,我沒有通過使用泛型基類來節省自己的工作。我也意識到,「最佳實踐」是在視圖中使用視圖模型而不是域模型。但是,我想了解爲什麼使用帶有泛型類型的基類會對腳手架造成問題。