我有一个xtraGrid控件(v12.1)绑定到一个bindingSource,这最后一个从一个LINQ to entities查询(EF4.3.1)获得数据,最终用户可以过滤和排序gridView,我有一个Stimulsoft报告,当用户点击一个gridView时显示PrintListButton的内容,如何获得xtragrid过滤和排序的数据源,以便将其附加到报告?谢谢。
过去一周我一直在博客上看到Linq to SQL已经死了,EF和Linq to Entities万岁。但当我阅读MSDN的概述时,我发现Linq to Entities生成eSQL的方式就像Linq to SQL生成SQL查询一样。
现在,由于底层实现(而且SQL Server还不是ODBMS)仍然是关系存储,因此在某些时候实体框架必须将其转换为SQL查询。为什么不解决Linq到SQL的问题(m:m关系,仅支持SQL服务器等)并使用Linq to SQL作为生成这些查询的层?
这是因为性能原因还是EF使用了一种不同的方式将eSQL语句转换成SQL?
在我看来--至少对于我外行的头脑来说--在E
我有一个使用实体框架对数据库建模的。这个博客的问题是很难找到我想要的东西。它需要一个搜索功能,但我不确定如何用SQL和/或LINQ to Entities实现它。
现在我正在用这个LINQ查询搜索我的数据库,但它看起来应该更好。
public IEnumerable<BlogPost> SearchBlogPosts(string query, int page, int itemsPerPage)
{
var result = _dataContext.BlogPosts
.Where(BlogPostContains(qu
我正在尝试检查一个给定的搜索词是否可以通过Linq在Id中找到。
我尝试过使用where(x => x.Id.ToString().Contains(term)),但这不起作用,因为它提供了一个不支持.ToString的例外
我也尝试过使用SqlFunctions.StringConvert((double)x.Id).Contains(term),但这并不像它给出的例外那样好
'The specified method System.String StringConvert(System.Nullable`1[System.Double]) on the type System
在遵循数据库第一方法时,我对Linq和Entity之间的区别感到困惑,因为我找不到任何明显的区别。
在我的例子中,当我使用Linq- to -SQL创建表时,我使用Linq到-SQL创建表示表的类,现在当我切换到实体框架时,我仍然遵循相同的步骤(创建数据库表,然后使用EF创建关联的类)。
我用同样的方式与这些类进行交互,例如,我过去使用相同的语法和方法查询用户类,但一次使用Linq创建User类,另一次使用EF、创建类,那么差异在哪里呢?
public IQueryable<User> findstudents(string term)
{
我使用的是Oracle Client 11.2.0.3和11g Oracle数据库,在将数字列数据转换为字符串时遇到了问题。
var items = new List<string>();
items = (from x in db.Table1
select x.ColA).ToList()); // ColA is NUMBER(9)
如果我使用Convert.ToString(x.ColA),我会得到LINQ to Entities does not recognize the method System.String ToString(Int32) me
Linq to Sql与实体框架(如Linq to SQL是一对一映射,EF是多对多映射等)有许多不同之处,这些都可以在找到
但是在这里,我问EF和Linq to Sql,我们是先创建实体,然后生成表,还是以另一种方式,以及这两种方法的优缺点。在EF中,可能存在从多个表继承而来的业务实体,并且不代表数据库中的任何内容。Linq to Entities是否不同于EF?
如果问题不清楚或问错了,请告诉我。提前谢谢各位。
all 方法应该根据列表中的所有元素计算参数。它在普通Linq中工作正常,但当我尝试将它与EF一起使用时,它会引发一个错误(“无法创建类型‘闭包类型’的常量值。在这个上下文中只支持原始类型(例如Int32、String和Guid)”。
示例:
var myList = from person in entities.People
where searchList.All(arg => arg == arg).ToList();
(arg == arg这里只是为了说明我的问题)
在我的场景中,searchList是一个包含搜索项的列表,如"John“、”
使用SQLServerCompact作为后端的EF CodeFirst查询有以下问题。
LINQ表达式是:
var results = (from c in x.Countries where c.Name.StartsWith(term) select c);
根据我所发现的,输出应该在WHERE子句中使用一个LIKE操作符,但是正在运行的SQL是:
SELECT [Extent1].[ID] AS [ID], [Extent1].[Name] AS [Name]
FROM [Countries] AS [Extent1]
WHERE (CHARINDEX(@p__linq__0, [Ext
我的Devart实体框架提供程序接受以下linq to entities。
from p in context.BEAT_CONTACT
join cl in context.COMPASS_LOCATIONS
on p.GAZETEER_KEY equals cl.GAZETTEER_KEY
//on new { bcdid = p.GAZETEER_KEY.Value }
//equals new { bcdid = cl.GAZETTEER_KEY.Value }
into myRandomlj
from rr in myRandomlj.DefaultIfEmpty()
注意:连接列在
我们正在评估EF4,我的数据库管理员告诉我们必须在所有SELECT语句中使用NOLOCK提示。因此,我正在研究如何在使用EF4时实现这一点。
我读过关于如何在EF4中实现这一点的不同想法,但所有这些看起来都像是一种权宜之计,并且没有得到微软或EF4的批准。当有人希望他们的SELECT语句在使用LINQ- to -SQL / LINQ- to -Entities和EF4时包含NOLOCK提示时,微软的“官方”回应是什么?
顺便说一句,我找到的最好的信息是,我鼓励每个对这个话题感兴趣的人阅读这个帖子。
谢谢。
我的数据库中有一个Person表,其中有NationalId字段。是否有任何方法可以使用Ef code first和Linq to entities加载所有使用偶数Linq to entities的人员,而不将所有Person加载到内存中?
一些事情,比如:
public bool IsEven(int number)
{
return number % 2 == 0;
}
var context = new MyContext();
var personsWithEvenNationalId = context.Persons
我有一些EF/LINQ语句,我需要进行不区分大小写的文本搜索,但是我们的oracle数据库是区分大小写的。如何在连接/命令级别执行必要的ALTER语句,从而影响后续的相同上下文调用?
命令,我想我需要运行()
ALTER SESSION SET NLS_SORT=BINARY_CI
我知道和都是方法,但我不知道什么时候。如果我在创建后但在LINQ之前手动尝试对上下文执行此操作,则必须手动打开和关闭连接,然后它似乎是一个与LINQ不同的事务,而且似乎没有应用。
我一直在研究从silverlight访问数据库的各种方法,所有不同的方法都让我感到困惑。我遇到过这么多方法和术语,我不确定它们之间有什么区别,也不知道它们是如何联系在一起的。有ADO.NET,WCF Data Services,Linq to SQL,Linq to Entities等,它们之间有什么区别,特别是WCF Data Services和Linq to Entities有什么区别?
我正在试图找到从silverlight访问oracle数据库的最佳方法,从我所发现的情况来看,Linq to SQL不会工作,因为它只能在SQL Server上工作。我找到了一个教程,介绍如何从我的数据库
我有一个带有CosmosDB提供者的实体框架核心上下文,并且只有一个实体:
public class Entity1
{
public Guid Id { get; set; }
public List<Item> Items { get; set; }
}
以下是实体的内部对象:
public class Item
{
public Guid Id { get; set; }
public List<SubItem> SubItems { get; set; }
}
public class SubItem
{
publi
升级到EF4 CTP5后,以前工作的(与CTP4一起使用)引发以下异常
无法将“'System.Linq.IQueryable`1KIT.TAM.Core.Entities.TravelAgent'.”类型的对象转换为‘System.Linq.IQueryable`1KIT.TAM.Core.Entities.TravelAgent’.类型的
关于以下返回声明:
namespace System.Linq.Dynamic
{
public static class DynamicQueryable
{
public static IQueryab
EF4.1改进了Code First和流畅的映射,这是非常令人印象深刻的。然而,我担心在EF4.1上实现复杂的查询,因为它强烈依赖于DbContext。Entity SQL和Linq to Entities通过SQL查询不断改变其行为。我觉得我们需要一个强大的查询机制,比如HQL或Criteria来克服这个问题。你怎么想的?
我正在创建一个实体框架7项目,以取代实体框架6项目。
我有一个属于一个国家的物品实体。然后,我有一个linq查询,它按国家获取计数。以下是查询。
var results = allItems
.GroupBy(g => g.Country)
.ToDictionary(s => s.Key, s => s.Count());
这适用于EF6,但对EF 7抛出一个异常(异常位于底部)。
这是我的实体:
public class Item
{
[Key]
public int id { get; se
我使用EF,我想搜索字段名,这个搜索必须忽略字符、空格和情况
在我的桌子上
id Name
1 Jean -philippe
当我在我的研究中进行搜索时,有时我有jeanphilippe,有些时候是jean philippe
我需要将此与db上的记录相匹配,例如:
await repository.FindAsync(m=>m.Name.ToLower().Replace("-", string.Empty).Trim()==request.Name.ToLower().Replace("-", string.Empty).Trim())
publi
我搜索了以下链接:
以及关于Oracle部署的许多其他帖子。
基本上,我有一个C#简单的测试应用程序将一些行插入到数据库中(这是一个测试应用程序)。完整的应用程序使用了大量的EF材料):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Diagnostics;
using MzDbLib.DataAccessObject;
using MzDbLib.DatabaseContext;
using
我正在使用Linq进行查询,该查询由实体框架数据源支持。
我得到了以下错误:
LINQ to Entities不识别'Double Sqrt(Double)‘方法,而且此方法不能转换为存储表达式。
下面是我的函数的简化版本(我的版本更复杂,使用了ACos、sin、cos和其他C#数学类函数)。
var objects =
from n in context.Products.Where(p => p.r == r)
let a = Math.Sqrt((double)n.Latitude)
whe
我正在尝试删除EF5中的多行。
离我更近的是
我打击了如何继续这一点,因为我需要使用LINQ(SQL IN)版本,我不想执行SQL。
我有一份ID's的清单我需要把它传给IN。如何在LINQ to Entities(EF)中实现
我尝试做什么的SQL版本:
DELETE FROM TEST WHERE TESTID IN (2,3,4,5)
我需要从LIST<ID>传入参数。
在EF中实现这一点的最佳方式是什么?
谢谢