Tag: linq to sql

如何从DataContext的跟踪机制中分离LINQ-to-SQL数据对象?

在询问了这个问题之后 ,我被告知Table.Attach()方法是如何工作的,我还有另外一个问题。 如何从DataContext的状态跟踪机制中分离LINQ-to-SQL数据对象? 基本上,我想拉一条记录并更改记录上的数据。 但是,当我在同一个DataContext实例上调用SubmitChanges()时,除非我明确调用Attach()否则我不希望更新记录。 这是如何完成的?

在LINQ中使用字符串作为字段名称

看下面的代码。 我想用参数field收到的字段名替换USERNAME 。 此方法必须能够在多个字段上进行一些搜索。 谢谢, public void Searching(string field, string stringToSearch) { var res = from user in _dataContext.USERs where user.USERNAME.Contains(stringToSearch) select new { Id = user.ID, Username = user.USERNAME }; }

Linq distinct&max

我要查询这个表: symbol time —— ———- aaa 2013-04-18 09:10:28.000 bbb 2013-04-18 09:10:27.000 aaa 2013-04-18 09:10:27.000 bbb 2013-04-18 09:10:26.000 对于具有最大时间值的所有不同符号,我需要一行 。 我怎么写我的linq查询? 提前致谢,

为什么LINQ to SQL将GroupBy转换为多个查询

我注意到甚至比使用GroupBy的更简单的LINQ查询也被转换为与组密钥一样多的SQL查询。 我没有找到任何解释为什么会发生这种情况或我如何避免它。 例如,查询: from p in People group p by p.Name into g select g 被转换为尽可能多的selects作为列Name不同值,就像这样: — Region Parameters DECLARE @x1 VarChar(20) SET @x1 = ‘John’ — EndRegion SELECT [t0].[Name], [t0].[SurName] FROM [People] AS [t0] WHERE ((@x1 IS NULL) AND ([t0].[Name] IS NULL)) OR ((@x1 IS NOT NULL) AND ([t0].[Name] IS NOT NULL) AND (@x1 […]

使用LINQ计算列表中项目的出现次数

我试图使用LINQ计算列表中项目的出现次数, 我有以下架构 – 用户(提供的所有条目),计数(待计算) 伯爵应该像 – 我想不出一个优雅的解决方案。 甚至只能使用LINQ吗? 如果没有,我们如何使用LINQ和一些C#代码实现这一点。

返回选定的指定列

我想从某个(Blobs)表中只选择几列。 我有以下字段:Id,RowVersion,Size,Signature,Blob,我想只选择前四个。 我这样做:(—>是一个错误的地方) public List GetAllBlobsNames() { RichTekstModelDataContext dc = new RichTekstModelDataContext(); var allBlobs = from b in dc.Blobs orderby b.RowVersion descending select new {b.Id, b.Size, b.Signature, b.RowVersion}; —> allBlobs.ToList(); } public class BlobDetails { public int Id { get; set; } public string Signature { get; set; } public int Size { get; set; […]

?:LINQ查询中的运算符

如何在LINQ查询的SELECT子句中使用?:运算符? 如果无法做到这一点,我该如何模仿呢? 目标是在我的select子句中获取CASE块。 您可能怀疑,我收到一个错误: 无效的匿名类型成员声明符。 必须使用成员分配,简单名称或成员访问声明匿名类型成员。 这是一种正确的方式,还是一种充分的方式,可以说“从内部联接i on a.ipid = i.id inner join u on i.uid = u.id”? 如果没有,请提供一个。 谢谢。 var query = from a in db.tblActivities from i in db.tblIPs from u in db.tblUsers select new { u.UserName == null ? i.Address : u.UserName, a.Request, a.DateTime };

返回带有id ==的元素的rownumber的LINQ语句?

如何编写返回带有id ==的元素的ROWNUMBER的LINQ语句?

禁用LINQ上下文的所有延迟加载或强制加载加载

我有一个文档生成器,目前包含大约200个项目的查询,但完成后可能会超过500个。 我最近注意到一些映射表示延迟加载。 这给文档生成器带来了问题,因为它需要根据生成的文档访问所有这些属性。 虽然我知道可以为上下文指定的DataLoadOptions ,但这会导致我必须显式指定可能加载的每一列。 这是1000的北方,因为所有数据提取都发生在一个上下文中。 有没有办法让我为上下文禁用延迟加载或显式启用急切加载以忽略延迟加载属性? 也许扩展DB上下文类并覆盖某些东西?

Linq上下文对象未注册为System.IDisposable对象的类型

我正在尝试在using语句中使用我的’context’对象。 它适用于一个项目,但另一个项目,我收到以下错误。 ‘…’:在using语句中使用的类型必须可以隐式转换为’System.IDisposable’ 当我指的是’context’对象时,我指的是当你使用LINQ to SQL时自动创建的对象。 我正在工作的类,实现另一个接口,可能是搞砸了这个上下文对象? using (TGDC context = new TGDC()) { } 这个单词 运用 它下面有红色的斜线(错误)。