gpt4 book ai didi

c# - 从 Linqkit 获取 SQL 字符串

转载 作者:行者123 更新时间:2023-11-30 21:51:25 25 4
gpt4 key购买 nike

如何从 LinqKit.ExpandableQuery<T> 返回 SQL ?
我正在使用 stevefenton.co.uk 中的代码但它似乎失败了

private static System.Data.Entity.Core.Objects.ObjectQuery<T> GetQueryFromQueryable<T>(IQueryable<T> query)
{
var internalQueryField = query.GetType().GetFields(System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).Where(f => f.Name.Equals("_internalQuery")).FirstOrDefault();
var internalQuery = internalQueryField.GetValue(query);
var objectQueryField = internalQuery.GetType().GetFields(System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).Where(f => f.Name.Equals("_objectQuery")).FirstOrDefault();
return objectQueryField.GetValue(internalQuery) as System.Data.Entity.Core.Objects.ObjectQuery<T>;
}

internalQueryField为空。

跟继承树(LinqKit + Linq)有关系,但是我不会让我的头脑绕过它.. :(

最佳答案

string sql = query.ToString();

关于c# - 从 Linqkit 获取 SQL 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35653493/

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