2
投票
3答案
1749 次观看

LINQ分组提问

我今天开始和Linq玩耍,遇到一个我找不到答案的问题。我正在查询具有一些员工记录的简单SQL Server数据库。字段之一是全名(cn)。我认为通过在第一个空格处拆分全名来对名字进行分组会很有趣。我尝试过 group by person.cn.Split(separators)[0] 但是遇到了一个漫长的运行时异常(看起来很像C ++模板实例化错误)。 然后我尝试按名字的几个字母分组: group by person.cn.Substring(0,5) 效果很好,但不是我想要的。 我想知道两件事: 当第一个示例看上去与第二个示例非常接近时,为什么它不起作用? ...

2
投票
1答案
137 次观看

LINQ语法序列

以下SQL SELECT * FROM customers 在LINQ中转换为此 var customers = from c in customers select c; 为什么将from和select互换是他们的充分理由吗? 我能想到的唯一合乎逻辑的原因是智能吗?为了使智力得到解决,它需要知道它在查询什么(作用域)? 其他原因为何被交换?

3
投票
3答案
3462 次观看

实体框架中的可空实体投影

我有以下SQL Server 2005数据库架构: CREATE TABLE Messages ( MessageID int, Subject varchar(500), Text varchar(max) NULL, UserID NULL ) “ UserID”列-可以为空-是外键,并链接到表 CREATE TABLE Users ( UserID int, ... ) 现在,我在以下查询中使用了几个名称为Message,User等的POCO类。 public IList<Message> GetMessage...

4
投票
2答案
853 次观看

如何编码Linq to SQL自动生成的部分扩展?

我使用VS 2008 SP1 Framework 3.5 SP1创建了从Linq到SQL Clasees的课程,在这种情况下,我扩展了部分课程 partial void UpdateMyTable(MyTable instance){ // Business logic // Validation rules, etc. } 我的问题是,当我执行db.SubmitChanges()时,它执行UpdateMyTable并进行验证,但它没有更新,我收到此错误: [Exception: Deliver] System.Data.Linq.ChangeProces...

1
投票
1答案
1031 次观看

Linq To SQL缓存VS多用户应用程序

我们开发了Win32应用程序,该应用程序通过Linq to SQL访问SQL 2005数据库。问题是当2个用户访问同一记录(查看和编辑)…用户1更新记录(DataContext.SubmitChanges())时,用户2将继续看到旧信息,直到他重新启动应用程序。因此,我们想更新用户2的上下文...现在出现的解决方案是调用DataContext.Refresh以将对象与SQL表同步...我们想知道是否存在其他解决方案? 谢谢

4
投票
4答案
3241 次观看

Linq输出作为接口?

这是我正在尝试执行的代码: public IList<IOperator> GetAll() { using (var c = new MyDataContext()) { return c.Operators.ToList(); } } Operator实现IOperator,但出现以下编译错误: Cannot implicitly convert type 'System.Collections.Generic.List<MyProject.Core.Operator>' to 'Syst...

7
投票
6答案
1040 次观看

有什么方法可以在C#中的对象初始化程序块中使用扩展方法

下面的简单演示捕获了我正在尝试做的事情。在实际程序中,我必须使用对象初始化程序块,因为它正在读取LINQ to SQL select表达式中的列表,并且有一个值我想从数据库中读取并存储在该对象上,但是该对象没有可以为该值设置的简单属性。相反,它具有XML数据存储。 似乎我无法在对象初始化程序块中调用扩展方法,并且无法使用扩展方法附加属性。 那么我对这种方法感到不满意吗?唯一的选择似乎是在这种情况下说服基类的所有者对其进行修改。 我有一个现有的解决方案,在其中我可以将BaseDataObject子类化,但这也有一些问题,在这个简单的示例中不会出现。这些对象将作为BaseDataObj...

58
投票
5答案
36810 次观看

C#列表理解简介

如何在C#中执行列表推导?

17
投票
12答案
58132 次观看

LINQ:自定义列名称

更新 我基本上是将查询绑定到WinFormsDataGridView。我希望列标题合适,并在需要时留有空格。例如,我希望列标题为First Name,而不是FirstName。 如何在LINQ中创建自己的自定义列名称? 例如: Dim query = From u In db.Users _ Select u.FirstName AS 'First Name'

18
投票
4答案
31780 次观看

通用LINQ查询谓词?

不确定这是否可行,或者我是否正确表达了我要寻找的内容,但是我的库中反复有以下代码,并且想练习一些DRY。 我有一组基于用户提供的简单搜索字段(例如Google)进行查询的SQL Server表。我正在使用LINQ根据搜索字符串中的内容来组成最终查询。我正在寻找一种使用泛型并传入lambda函数的方法,以此来创建可重用的例程: string[] arrayOfQueryTerms = getsTheArray(); var somequery = from q in dataContext.MyTable select q; if (arrayOfQ...

2
投票
1答案
284 次观看

查询以检索组节点的名称

如果我将这样的XML加载到XDocument对象中: <Root> <GroupA> <Item attrib1="aaa" attrib2="000" /> </GroupA> <GroupB> <Item attrib1="bbb" attrib2="111" /> <Item attrib1="ccc" attrib2="222" /> <Item attrib1="ddd" attrib2="333"...

20
投票
5答案
12316 次观看

如何使用LINQ-To-SQL避免内存泄漏?

我在内存使用方面一直遇到LINQ-To-SQL问题。我在Windows服务中使用它进行一些处理,并且遍历了从上下文中拉回的大量数据。是的-我知道我可以使用存储过程来做到这一点,但是出于某些原因,这不是一个理想的解决方案。 无论如何,我基本上看到的是即使我拨打context.SubmitChanges()后也没有释放内存。所以我最终不得不做各种奇怪的事情,例如一次只拉回100条记录,或者创建多个上下文并拥有它们做单独的任务。如果我保留相同的DataContext并在以后用于其他呼叫,它将消耗越来越多的内存。即使我在查询返回给我的“ Clear()”数组上调用var tableRows,将...

8
投票
14答案
876 次观看

如何在Ruby / Python中编写此代码?或者,您可以将我的LINQ转换为Ruby / Python吗?

昨天,我问了这个问题,但从未真正得到我真正满意的答案。我真的很想知道如何使用诸如Ruby之类的功能语言生成N个唯一随机数的列表,而不必在样式上极为必要。 由于我没有看到我真正喜欢的东西,因此我在LINQ中编写了所需的解决方案: static void Main(string[] args) { var temp = from q in GetRandomNumbers(100).Distinct().Take(5) select q; } private static IEnumerable Ge...

41
投票
9答案
41696 次观看

如何调试LINQ语句

我有一个Linq to objects语句 var confirm = from l in lines.Lines where (l.LineNumber == startline.LineNumber) || (l.LineNumber == endline.LineNumber) select l; 确认对象在System.Linq.Enumerable.WhereListIterator`1.MoveNext()处返回“对象为空或不是引用” 如果查询结果为空,则只会返回一个空的枚举数。我知道,语句中没有空对象。是否可以单步执行LINQ语句以查看它的下落位置?...

4
投票
6答案
5146 次观看

您可以使用Python或Boo等语言进行类似LINQ的查询吗?

进行以下简单的 C#LINQ 查询,并想象db.Numbers是一个带有一列Number的 SQL 表: var result = from n in db.Numbers where n.Number < 5 select n.Number; 这将在 C#中非常有效地运行,因为它会生成类似的 SQL 查询 select Number from Numbers where Number < 5 不不执行的操作是从数据库中选择 all 个数字,然后在可能出现的 C#中对其进行过滤首先要做。 Python 支...

10
投票
12答案
2156 次观看

开始使用Linq,我需要什么?

基本上是标题所说的。 (原谅我,因为我是.NET newb) 在我的部门中,我们有一台运行.net 3.5的服务器,自从进入本节以来,我一直在使用LINQ。但是,我正在另一个服务器上(显然)开始一个个人项目,所以有两个问题: 我需要什么来启动和运行LINQ? 服务器运行LINQ需要什么? .net 2.0是否可以在服务器上工作? 如果重要的话,后面的代码将是C#。 编辑: 我需要在3.5中编译还是2.0可以工作?

2
投票
3答案
1997 次观看

Linq to SQL分组子关系

我正在尝试运行LINQ to SQL查询,该查询在搜索引擎样式列表的网格视图中返回结果。 在下面的简化示例中,是否可以在单个查询中用逗号分隔的列表填充父项拥有的任何子项(NAMESOFCHILDREN)? var family = from p in db.Parents where p.ParentId == Convert.ToInt32(Request.QueryString["parentId"]) join pcl in db.ParentChildLookup on p.ParentId equals pcl.Par...

9
投票
7答案
5338 次观看

LINQ有多快?

我需要处理100,000-200,000条记录。 我正在考虑使用LINQ(到SQL)执行此操作。 我从经验中知道,过滤数据视图非常慢。 LINQ有多快? 能否请您告诉我您的经验以及是否值得使用,或者使用SQL存储过程(繁琐而又不太灵活)会更好吗? 在成千上万的记录中,我需要找到一组数据,然后对其进行处理,每组大约有50条记录。

14
投票
2答案
7393 次观看

使用IQueryable <t>的设计模式</t>

随着.NET 3.5和IQueryable&lt;T&gt;接口的引入,将出现新的模式。虽然我看到了规范模式的许多实现,但我还没有看到使用此技术的许多其他模式。 Rob Conery的Storefront应用程序是使用IQueryable&lt;T&gt;的另一个具体示例,可能会导致一些新的模式。 有用的IQueryable&lt;T&gt;界面出现了哪些模式?

14
投票
6答案
26540 次观看

动态LINQ和动态Lambda表达式?

动态编写LINQ查询和Lambda表达式的最佳方法是什么? 我正在考虑最终用户可以设计业务逻辑规则的应用程序,然后必须执行这些规则。 很抱歉,这是一个新手问题,但是最好的做法是从经验中汲取经验。

182
投票
3答案
100552 次观看

LINQ插入后能否返回“ id”字段?

当我使用Linq-to-SQL将对象输入数据库时​​,是否可以获取刚插入的ID,而无需进行其他数据库调用?我以为这很简单,我只是不知道怎么做。

18
投票
6答案
20307 次观看

LINQ to实体-建立where子句以测试多对多关系中的集合

因此,我正在使用Linq实体框架。我有2个实体:Content和Tag。它们彼此之间处于多对多关系。 Content可以有很多Tags,而Tag可以有很多Contents。因此,我试图编写一个查询以选择所有标签名称等于blah的所有内容 两个实体都具有另一个实体的集合作为属性(但没有ID)。这就是我在努力的地方。我确实有一个针对Contains的自定义表达式(因此,无论谁可以帮助我,您都可以假定我可以为集合做一个“包含”)。我从以下表达式中获得了此表达式: http://forums.microsoft.com/ MSDN / ShowPost.aspx?PostID = 267071...

6
投票
5答案
3569 次观看

LINQ相当于“选择*”的SQL通用功能?

我有一个通用的&lt;&gt;函数,该函数接受一个linq查询(“ items”),并通过它枚举添加其他属性。如何选择原始“项目”的所有属性,而不是项目本身(如下面的代码所示)? 与sql等效:从项目中选择*,'bar'作为Foo foreach (var item in items) { var newItem = new { item, // I'd like just the properties here, not the 'item' object! Foo = "bar" }; newItems.Add(new...

1
投票
10答案
336 次观看

要求用户更新.NET

我正在使用.NET框架上的C#开发某些生产软件。我真的很希望能够在该项目上使用LINQ。我相信它需要.NET 3.5版(如果我输入错了,请纠正我)。此应用程序是商业软件应用程序,需要在客户端的工作PC上运行。假设他们具有.NET 3.5,还是假设他们不介意升级到最新版本,是否合理? 我只想了解在强制框架升级以运行应用程序方面的共识。

12
投票
1答案
8642 次观看

如何将IEnumerable <t>或IQueryable <t>强制转换为EntitySet <t>?</t></t></t>

在这种情况下,我试图使用LINQ to XML和LINQ to SQL将数据从XML文件导入数据库。 这是我的LINQ数据模型: public struct Page { public string Name; public char Status; public EntitySet&lt;PageContent&gt; PageContents; } public struct PageContent { public string Content; public string Username; public DateTime ...

93
投票
3答案
43734 次观看

.NET List <t> Concat与AddRange</t>

AddRange 和 Concat 函数清单?是否推荐一个?

127
投票
13答案
45442 次观看

在IEqualityComparer中包装一个委托

几个Linq.Enumerable函数需要一个IEqualityComparer&lt;T&gt;。是否有一个方便的包装器类来适应delegate(T,T)=&gt;bool以实现IEqualityComparer&lt;T&gt;?编写一个代码很容易(如果您忽略定义正确的哈希码的问题),但是我想知道是否有一个现成的解决方案。 具体来说,我想对Dictionary进行设置操作,仅使用Key定义成员资格(同时根据不同规则保留值)。

12
投票
4答案
12100 次观看

水晶报表和LINQ

有人知道如何在Linq to SQL中使用Crystal Reports吗?

1
投票
1答案
339 次观看

LINQ FormatException

我目前有一个现有数据库,并且正在使用LINQtoSQL生成器工具为我创建类。该工具对该数据库运行良好,并且该工具没有错误。 当我对数据运行LINQ to SQL查询时,表中存在一行包含某些无效数据的行,并且在该行上运行时会引发System.FormatException。有人知道这是出于什么吗?有谁知道我如何缩小影响的列而不必将它们一一添加到select子句中?

2
投票
3答案
673 次观看

如何确定从LINQ到SQL的结果集的大小(以字节为单位)

在编写手动SQL时,很容易估计查询返回的数据的大小和形状。我越来越发现使用LINQ to SQL查询很难做到这一点。有时,我发现的数据量超出了我的预期-确实会减慢直接访问数据库的远程客户端的速度。 我希望能够运行一个查询,然后准确说明通过网络返回的数据量,并以此来帮助我进行优化。 我已经使用DataContext.Log方法连接了日志,但这仅指示我已发送的SQL,而不是接收的数据。 有什么提示吗?