这似乎是一个非常模糊的错误,我甚至不知道从哪里开始......
当前的CSharpHelper不能支持类型的文字 'System.Func`3 [Microsoft.EntityFrameworkCore.Metadata.IProperty,Microsoft.EntityFrameworkCore.Metadata.IEntityType,Microsoft.EntityFrameworkCore.ValueGeneration.ValueGenerator]'。 配置您的服务以使用可以使用的服务。
当我跑
时会发生这种情况dotnet ef migrations add initial
更新1 - 基于Rob的问题
应用程序的体系结构使用了丰富的域模型,因此有一些“变通方法”可以获取封装集合等内容,并且Jimmy Bogard的类型枚举模式可以正常工作。
每个域模型对象在数据访问层中都有自己的EntityTypeBuilder
类,所有这些都是从OnModelCreating
中的DbContext
调用的。这些也会向Console
输出一些信息,因此我可以看到构建器没有导致任何错误(此时都没有错误)。
DbContext
仅为聚合根实体公开DbSet
,或者以另一种方式公开,只显示具有相应存储库类的实体。其余的域模型对象是导航属性,因此不需要通过DbSet
公开DbContext
。
平台细节(据我所知)
答案 0 :(得分:4)
您正在使用.NET Core 1.1运行时但是旧的工具包(您应该使用最新的工具,截至此日期它是 preview4 ,它仍然在 alpha < / em>,与运行时相反 - 是的,起初不是很直观)
总之,这是一个Known Issue
"tools": {
"Microsoft.EntityFrameworkCore.Tools.DotNet": "1.1.0-preview4"
}
{
"projects": [ "src", "test" ],
"sdk": {
"version": "1.0.0-preview2-1-003177"
}
}
编辑:为了给您一个更完整的答案,这就是我的 project.json 和我的示例项目的样子(全部在VS Code中完成):< / p>
{
"version": "1.0.0-*",
"buildOptions": {
"debugType": "portable",
"emitEntryPoint": true
},
"dependencies": {
"Microsoft.EntityFrameworkCore": "1.1.0-preview1-final",
"Microsoft.EntityFrameworkCore.Design": "1.1.0-preview1-final",
"Microsoft.EntityFrameworkCore.SqlServer": "1.1.0-preview1-final",
"Microsoft.EntityFrameworkCore.SqlServer.Design": "1.1.0-preview1-final",
},
"frameworks": {
"netcoreapp1.1": {
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.1.0"
}
},
"imports": "dnxcore50"
}
},
"tools": {
"Microsoft.EntityFrameworkCore.Tools.DotNet": "1.1.0-preview4-final"
}
}