问题标签 [entity-sql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
463 浏览

c# - 查询提供程序将 ELINQ 查询编译为 ESQL 时,类名是保留字

我收到此错误:

System.Data.DataException:初始化数据库时发生异常。有关详细信息,请参阅 InnerException。---> System.Data.EntitySqlException: 'All' 是保留关键字,不能用作别名,除非转义。在 System.Data.Common.EntitySql.CqlLexer.MapIdentifierOrKeyword(String symbol) 在 System.Data.Common.EntitySql.CqlLexer 的 System.Data.Common.EntitySql.CqlLexer.MapUnescapedIdentifier(String symbol) 的第 1 行附近。 yylex() 在 System.Data.Common.EntitySql.CqlParser.yylex() 在 System.Data.Common.EntitySql.CqlParser.yyparse() 在 System.Data.Common.EntitySql.CqlParser.Parse(String query) 在系统。 Data.Common.EntitySql.CqlQuery.Parse(String commandText, ParserOptions parserOptions) 在 System.Data.Common.EntitySql.CqlQuery.CompileCommon(String commandText,

...<剪辑>...

在 System.Data.Entity.Infrastructure.DbQuery 1.System.Linq.IQueryable.get_Provider() at System.Linq.Queryable.Where(IQueryable1 源,Expression`1 谓词)在 All.cs 中的 MyNamespace.All.GetEmptyList():第 35 行

这似乎是由测试类的名称为“全部”引起的。

MyItems属性是Service基类的公共属性:

我假设我的类名正在转换为 ESQL 类型,这会将其转换为保留字。但是,我对此没有(直接)控制权,并且由于 ESQL 和 TSQL 不是我关心的问题,我认为这个问题不应该冒泡,特别是因为我不知道我能做些什么,除了从重命名我的班级(如果我将其更改为“All2”,一切正常。)

为什么表达式解析器(无论具体在哪里,可能是ExpressionConverter.Convert()or TranslateInlineQueryOfT)不会自动转义保留字?

有没有办法可以解决这个问题?更改类名是一种技巧。

(使用 .NET 4、EF 4.1 运行代码优先,针对 MS SQL 2008 R2。)

0 投票
1 回答
255 浏览

.net - ObjectQuery 作为 ESQL 中的参数

假设我有 2 个实体:Ent并且SubEnt具有 N:1 关系。因此,有导航属性SubEnt.EntsEnt.SubEnt. 另外,我定义了一些 ObjectQuery:

如何创建从Ent具有Ent.SubEntfrom 的所有实体中选择所有实体的 ESQL 查询se?像这样的东西:

其中@p == se。它看起来像一个嵌套查询。但是这种语法不正确,因为“仅支持标量类型”。

0 投票
1 回答
1023 浏览

entity-framework - 将 ESQL 转换为 LINQ 到实体。按相关实体排序

我正在使用 EF + RIA,不幸的是,在按相关实体排序时遇到了一些问题。为此目的,我实现了 ESQL 查询(仅找到此解决方案):

表具有以下结构:

有没有办法使用 LINQ to Entities 方法重写这些东西(排序)?

0 投票
1 回答
615 浏览

entity-framework - 实体 SQL IN/Multiset 问题

我在实体 sql 中使用以下查询

该值在运行时使用以下代码替换:

执行时,sql server中生成的相应语句如下:

代替IN子句的=子句被替换。

我在这里做错什么了吗?

0 投票
2 回答
1034 浏览

c# - 实体查询“喜欢”不支持 int 列

我正在尝试Like通过使用实体框架查询来实现运算符。但它似乎Like不受int列的支持。

这是我的查询:

如您所见,Factory id 是整数数据类型。当我执行它时,它返回一个错误:

LIKE 参数必须是字符串类型。近成员访问表达式

有没有其他人尝试过这个?

0 投票
3 回答
710 浏览

c# - EntitySQL 和 SQL 注入

我有以下查询字符串

使用以下参数替换

但我总是以异常告终:

键表达式“ORDER BY”必须至少有一个对直接输入范围的引用。近 ORDER BY 子句项

我猜这发生了导致query.Parameters.Add(...)全部用引号括起来?我也读过这篇文章,但是如果什么都没有发生,我需要什么好处query.Parameters.Add(...)呢?好吧,攻击者可能不会开始新的查询,但我猜他可以操纵当前?

0 投票
1 回答
1300 浏览

c# - 从查询字符串开始时比较 EntitySQL 中的 DateTime 值

我正在使用QueryBuilder如下:

请注意,我非常简化了这个示例,并且我的目标是在创建QueryBuilder实例之前将查询构建为字符串。(只要这是可能的)

我已经尝试了以下

这都会导致一个异常,即我无法将 DateTime 与 String 或 Int32 进行比较。

我开始问我这种方法是否有可能......

0 投票
1 回答
573 浏览

subquery - EntitySQL 'IN 子查询

我有以下 T-SQL:

SELECT Cust.[CompanyName] FROM Customers AS Cust WHERE ( Cust.[CompanyName] IN (SELECT CustSQ1.[CompanyName] AS [Customer Company name] FROM Customers AS CustSQ1 WHERE ( CustSQ1.Country = 'Argentina' ) ) )

我如何在 EntitySQL 中做同样的事情?

0 投票
1 回答
4251 浏览

linq - 如何通过 LINQ 查询获取 Entity-SQL 命令文本?

这是 EF 代码优先的练习。有一个简单的方法。我想获取对象服务生成的 Entity SQL 命令文本。

MyDbContext派生自DbContext 。Person是 POCO 类。)

ObjectQuery.TraceString我曾经在 LINQ to Entity 中获取本机 SQL 命令文本。现在,我需要的是 Entity-SQL 语句,而不是本机 SQL 语句。

但是,我无法将查询从IQueryable<Person>toObjectQueryObjectQuery<Person>DbQuery我试图通过反思来获得成员。似乎DbQuery没有关于命令文本或跟踪字符串的任何属性。

谢谢

0 投票
2 回答
2937 浏览

asp.net - 像实体数据源中的运算符

我在 asp .net 表单中使用 EntityDataSource 并且 Gridview 绑定到它。在 entityDataSource 中使用了 where 子句:

@Name是一个参数:

但它不起作用。当我@Name使用固定字符串进行更改时,它可以正常工作,如下所示: