c# - Linq.dynamic.core IQueryable to SQL 语句
问题描述
我目前正在使用System.Linq.Dynamic.Core
在我的应用程序中生成 SQL 语句。问题是当我尝试
db.table.select("new (column1 as a1)").ToString()
生成的 SQL 字符串会自动添加另一个1 AS [C1]
& 列别名a1
未显示在输出字符串中:
SELECT
1 AS [C1],
[Extent1].[column1] AS [column1]
FROM
(SELECT
[table].[column1] AS [column1]
FROM
table AS [table]) AS [Extent1]
我的问题是如何实现以下结果以及为什么会发生上述行为。
SELECT
[Extent1].[column1] AS [c1]
FROM
(SELECT
[table].[column1] AS [column1]
FROM
table AS [table]) AS [Extent1]
解决方案
尝试将获取数据的代码行更改为
var list = db.table.Select("new (column1 as a1)").ToDynamicList();
结果将是每个都有属性List<dynamic>
的动态对象。a1
实际的 SQL 语句可能不同,但返回的属性名称将遵循别名。
推荐阅读
- html - 如何在没有框架的 PWA 中实现暗模式?
- python - 对于线长的(x,y)像素坐标,调整角度变成圆形
- javascript - 字符串类型的 Mongoose _id 不抛出错误
- c# - ASP.NET 应用程序运行时如何将数据保存在内存(会话)中?
- ios - 如果集合中只有 1 个元素,则 UICollectionView 不进入 cellForItemAt 方法
- azure - 将自定义 exe 上传到 Azure Devops 管道
- regex - 如何将多个正则表达式字符串合并为一个?
- css - 引导下拉菜单类的问题
- javascript - Gatsby-Redux:组件不会在状态更改时重新渲染
- eclipse - 在 Eclipse 中打开一个新的内部 Web 浏览器选项卡?