今天我开始研究.Net Core(我想移植我当前的应用程序),我达到了一个我希望拥有一个具有基本结构的“模型”的地步(IQuery,它之前是一个接口)以及定义类型的枚举。
所以我们有Enum和Abstract类(或接口,不能决定)。重点是QueryType。在派生类中,默认情况下将其设置为特定的枚举。
问题是我收到以下错误:
失败:Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware [0] 发生了未处理的异常:实体类型“IQuery”的相应CLR类型不可实例化,并且模型中没有与具体CLR类型对应的派生实体类型。
自从我为ASPNET写作以来已经很长时间了,该死的已经改变了。
主要抽象类+枚举
public enum QueryType
{
MySQL = 0,
MSSQL = 1,
RabbitMQ = 2
};
public abstract class IQuery
{
public IQuery() {}
[Required]
public string Id { get; set; }
public QueryType QueryType { get; set; }
}
扩展班级
public class MySQL : IQuery
{
public string Context { get; set; }
new public QueryType QueryType
{ get; set; }
}