新语言功能破坏了脚手架——无法获取 DbContext 的反射类型
New language feature breaks scaffolding - Could not get the reflection type for DbContext
所以新的语言功能实现了 shorthand 默认关键字的选项。
public void GenericMethod<T>(T responseObject = default)
{
//Your code here
}
代替旧的
public void GenericMethod<T>(T responseObject = default(T))
{
//Your code here
}
在使用新的 shorthand 时,我们遇到了一个错误,即无法在 dotnet 核心中构建视图或控制器。 - 给出错误 "There was an error running the selected code generator: Could not get the reflection type for DbContext : ...."
通过恢复到旧的实施方式,"default" 错误消失了。
截至目前,使用 default 关键字的新方法是我们遇到的唯一一种破坏它的方法,但我认为类似的新语言功能可能存在问题。
这不是真正的问题。我们只是认为传播这个错误的消息会很好;因为没有 post 涵盖这个问题。
Visual studio : Visual studio 2019
目标框架:.NET Core 2.2
编辑:这不是 EF 的问题。如果在您使用模型 class(FooClass) 的情况下尝试在没有 dbContext 的情况下构建视图,则错误更改为:无法获取模型的反射类型:FooClass
这里有类似的问题。将其改回旧方式有效。
public static T Get<T>(this ISession session, string key)
{
var value = session.GetString(key);
return value == null ? default(T) : JsonConvert.DeserializeObject<T>(value);
}
public static T Get<T>(this ISession session, string key)
{
var value = session.GetString(key);
return value == null ? default : JsonConvert.DeserializeObject<T>(value);
}
所以新的语言功能实现了 shorthand 默认关键字的选项。
public void GenericMethod<T>(T responseObject = default)
{
//Your code here
}
代替旧的
public void GenericMethod<T>(T responseObject = default(T))
{
//Your code here
}
在使用新的 shorthand 时,我们遇到了一个错误,即无法在 dotnet 核心中构建视图或控制器。 - 给出错误 "There was an error running the selected code generator: Could not get the reflection type for DbContext : ...."
通过恢复到旧的实施方式,"default" 错误消失了。
截至目前,使用 default 关键字的新方法是我们遇到的唯一一种破坏它的方法,但我认为类似的新语言功能可能存在问题。
这不是真正的问题。我们只是认为传播这个错误的消息会很好;因为没有 post 涵盖这个问题。
Visual studio : Visual studio 2019
目标框架:.NET Core 2.2
编辑:这不是 EF 的问题。如果在您使用模型 class(FooClass) 的情况下尝试在没有 dbContext 的情况下构建视图,则错误更改为:无法获取模型的反射类型:FooClass
这里有类似的问题。将其改回旧方式有效。
public static T Get<T>(this ISession session, string key)
{
var value = session.GetString(key);
return value == null ? default(T) : JsonConvert.DeserializeObject<T>(value);
}
public static T Get<T>(this ISession session, string key)
{
var value = session.GetString(key);
return value == null ? default : JsonConvert.DeserializeObject<T>(value);
}