【发布时间】:2016-12-16 02:07:35
【问题描述】:
这似乎是一个非常晦涩难懂的错误,我什至不知道从哪里开始......
当前的 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 类,所有这些都是从DbContext 中的OnModelCreating 调用的。这些还会向Console 输出一些信息,因此我可以看到构建器没有导致任何错误(此时都没有)。
DbContext 只为聚合根实体公开DbSet,或者换句话说,只公开具有相应存储库类的实体。域模型对象的其余部分是导航属性,因此不需要通过DbContext 公开DbSet。
平台细节(据我所知)
- .NET Core 1.1(运行时 + SDK)
- EF Core 1.1
- Microsoft.EntityFrameworkCore.Tools 1.0.0-preview2-final
- Microsoft.EntityFrameworkCore.Design 1.0.0-preview2-final
【问题讨论】:
-
你的模型定义是什么?
-
@Rob,我不确定我是否完全理解你的问题?
-
抱歉 - 我的意思是,快速一目了然,它似乎无法为您的模型搭建脚手架。也就是说,它将根据您的内存模型生成 SQL 表。您将在上下文类中定义它们。类似:
DBSet<Person> People { get; set; }。Person可能暴露了 EF 无法转换为 SQL 类型的属性类型。 -
@Rob 我已经更新了我的问题,希望能对您的最后一个问题有所了解。
标签: c# .net entity-framework .net-core entity-framework-core