gpt4 book ai didi

c# - EF 核心 FromSql 自定义属性绑定(bind)

转载 作者:太空宇宙 更新时间:2023-11-03 15:09:12 26 4
gpt4 key购买 nike

假设我有以下类(class):

public class Person
{
public int Id { get; set; }
public string Name { get; set; }
[NotMapped]
public bool Code { get; set; }
}

Code 属性不是列,而是通过 SQL 查询计算的。我想使用 FromSql 方法将属性 Code 绑定(bind)到我的 Person 类型。像这样:

var result = db.Person
.FromSql("select Id, Name, 'Roar' as Code from Persons")
.Select(x => new Person
{
Id = x.Id,
Name = x.Name,
Code = EF.Property<string>(x, "Code")
}).ToList();

有什么方法可以将自定义 SQL 查询变量绑定(bind)到对象属性吗?

最佳答案

感谢DavidG .肮脏的解决方法是删除 NotMapped 属性。但是,为避免删除 NotMapped 属性,您可以使用 LINQ 表达式,以便 code 获取其值。

基本上,如果您想使用复杂的自定义 SQL 查询,最好的方法是使用 ADO.NET。

关于c# - EF 核心 FromSql 自定义属性绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41945680/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com