问题标签 [compiled-query]
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.
c# - 重用在可移植类库中创建的 LINQ 表达式
是否可以在可移植类库中创建 LINQ 表达式并在应用程序的其他部分重用该表达式?对我来说,一个方便的用例是在 CompiledQuerys 中跨平台使用这些表达式,而不是多次复制/粘贴相同的代码。
到目前为止,我所有的尝试最终都抛出了一些或多或少毫无意义的运行时异常(NullReferenceException
, Column not found..)。我猜 PCL 中的 LINQ 表达式的处理方式与 WP 应用程序中的处理方式不同?
c# - CompiledQuery 抛出 ArgumentException
我试图在扩展方法中使用一个非常简单的预编译查询来使用 LINQ to SQL 检索数据。SytelineRepository 是我使用外部映射文件的自定义 DataContext,我正在查询 JobOrders 表。我已经使用自定义 DataContext 很长时间没有问题,并且执行相同的查询也没有问题;我只是想提高性能。但是,当我尝试使用 CompiledQuery.Compile 时,我得到下面的 ArgumentException。
这是代码:
作为对比,这有效:
这是完整的错误:
System.ArgumentException 未处理
Message=Property 'System.String ItemNumber' 没有为类型 'System.Linq.IQueryable`1[Mpicorp.SytelineDataModel.JobOrder]' 定义
c# - 如何使用 CompiledQuery
我之前使用 linq 从数据库中获取数据,但看起来使用 CompiledQuery 和 Linq 应该比使用 Linq 本身。
我尝试使用 CompiledQuery,但它引发了异常。
以下是我的代码:
我只想从 table 中获取值“PC_ID”和“USER_ID” C_InternetCafe
,并将它们添加到 myDataModel 其数据成员具有pid
and uid
。
//------------------------------------------------ ----------------------------
原谅我的疏忽,以下是我得到的例外。
c# - 编译查询没有隐式引用转换为 ObjectContext
我正在创建一个委托来检索数据库中的所有专辑记录。我在另一个项目中使用了同样的方法,但由于某种原因,这次我遇到了错误。
我错过了一步吗?我不确定为什么会出现此错误。
代码
错误
错误 1 类型 'CodyData.Diagram.CodySolutionEntities' 不能用作类型parameter 'TArg0' in the generic type or method 'System.Data.Objects.CompiledQuery.Compile<TArg0,TResult>(System.Linq.Expressions.Expression<System.Func<TArg0,TResult>>)'. There is no implicit reference conversion from 'CodyData.Diagram.CodySolutionEntities' to 'System.Data.Objects.ObjectContext'. C:\Users\Cody\Documents\CMBS\CodySolution\CodyData\Delegates\PhotoDelegates.cs 13 13 CodyData
c# - 从 Linq 编译查询返回 KeyValuePair
我刚刚开始掌握 Linq 中的编译查询,并且遇到了一些奇怪的行为。
此查询编译良好:
但是当我尝试将返回类型从对象更改为 KeyValuePair 时,如下所示:
我收到以下错误:
CS1662:无法将 lambda 表达式转换为委托类型 'System.Func<DataContext,string,System.Collections.Generic.KeyValuePair<string,int>>' 因为块中的某些返回类型不能隐式转换为委托返回类型
如何KeyValuePair
从已编译的查询中返回单个?或者我会以完全错误的方式解决这个问题?
c# - c# 编译查询
我正在尝试按照http://msdn.microsoft.com/en-us/library/bb896297.aspx上的 MSDN 示例进行编译查询
这是我的代码
我收到以下错误
错误 1 类型“W.Models.newTestDBContext”不能用作泛型类型或方法“System.Data.Objects.CompiledQuery.Compile(System.Linq.Expressions.Expression>)”中的类型参数“TArg0”。没有从“W.Models.newTestDBContext”到“System.Data.Objects.ObjectContext”的隐式引用转换。
sql-server - Sql Server 2014 的“Hekaton”编译存储过程是否解决了参数嗅探问题?
SQL Server 2014 的“Hekaton”内存表优化宣称,“存储过程中业务逻辑的本机编译”。然而,由于 SQL Server 2012 及更早版本中的“参数嗅探”(请参阅此处和此处)存在问题,我一直被迫使用OPTIMIZE FOR UNKNOWN
(或其等效项)设计大部分存储过程。这有效地防止了查询计划被缓存,并强制 SQL Server 在每次运行时重新编译/重新优化查询。Hekaton 的大部分性能提升来自于本机编译查询的重用,SQL Server 2014 是否可以解决参数嗅探问题,以便我可以实际使用编译查询?
c# - 用于计数的简单 Linq to SQL Compiled.query
我有一个函数可以每分钟计算一次数据库,我想编译查询来这样做。该表正在被多个来源不断写入(并从中删除),我想收集关于全天使用的唯一行数的结果。
我正常的 linq 查询是:
如何将其转换为已编译的查询?背景。我已经做了一个星期的 LINQ,我可以用它编写复杂的连接语句。这是编译查询的第一天,我有点迷茫。我对这可能(或可能不会)提高查询性能这一事实不太感兴趣,我只想看到一个可以构建的编译查询。
c# - 使用 CompiledQuery 会破坏使用我的 datacontext 的 IQueryable 属性的查询
我在查询中使用的数据上下文中有一个属性:
这工作正常,除了当我尝试如下使用它时,在CompiledQuery
:
我得到一个Sequence contains more than one element
错误。
是什么原因造成的,我能做些什么来解决它?