【发布时间】:2022-06-12 02:43:02
【问题描述】:
我想以这种方式创建原始 sql 查询并将结果映射到 ViewModel 类:
这是视图模型类:
class MyViewModel
{
public String field1 { get; set; }
public bool? field2 { get; set; }
}
这是我在 dbcontext 类中放入的内容(在 OnModelCreating 函数中):
modelBuilder.Entity<MyViewModel>.HasNoKey();
这是我的查询:
var query = db.Set< MyViewModel>(). FromRawSql("SELECT field1, null as field2 FROM MyTable");
我收到有关 field2 的错误,因为 EF 无法将 Null 转换为 field2。我不明白为什么,因为 field2 在 MyViewModel 中可以为空。
我也尝试输入 0 或 1。我有一个转换错误 Int32 vs bool。我怎样才能让它工作?
非常感谢
【问题讨论】:
-
这应该可以正常工作,并且在 EF Core 6 中对我来说根本无法重现。
标签: entity-framework entity-framework-core