Questions tagged «linq-to-sql»

LINQ to SQL是.NET Framework 3.5版的组件,它提供了运行时基础结构,用于将关系数据作为存储在Microsoft SQL Server中的对象进行管理。

14
返回IEnumerable <T>与IQueryable <T>
Return IQueryable&lt;T&gt;与vs 之间的区别是什么IEnumerable&lt;T&gt;,何时应该优先选择另一个? IQueryable&lt;Customer&gt; custs = from c in db.Customers where c.City == "&lt;City&gt;" select c; IEnumerable&lt;Customer&gt; custs = from c in db.Customers where c.City == "&lt;City&gt;" select c;

16
Select和SelectMany之间的区别
我一直在寻找和之间的区别Select,SelectMany但找不到合适的答案。我需要学习使用LINQ To SQL的区别,但我发现的只是标准数组示例。 有人可以提供LINQ To SQL示例吗?
1071 c#  linq-to-sql  linq 

16
实体框架与LINQ to SQL
现在已经发布了.NET v3.5 SP1(以及VS2008 SP1),我们现在可以访问.NET实体框架。 我的问题是这个。当尝试在使用实体框架和LINQ to SQL作为ORM之间做出决定时,有什么区别? 据我了解,实体框架(当与LINQ to Entities一起使用时)是LINQ to SQL的“老大哥”吗?如果是这样,它有什么优势?LINQ to SQL不能单独做什么?

15
LINQ:何时使用具有筛选条件的SingleOrDefault与FirstOrDefault()
考虑IEnumerable扩展方法SingleOrDefault()和FirstOrDefault() MSDN文件指出SingleOrDefault: 返回序列的唯一元素;如果序列为空,则返回默认值;否则,返回默认值。如果序列中有多个元素,则此方法将引发异常。 而FirstOrDefault从MSDN(推测当使用OrderBy()或 OrderByDescending()在所有或没有), 返回序列的第一个元素 考虑几个示例查询,何时使用这两种方法并不总是很清楚: var someCust = db.Customers .SingleOrDefault(c=&gt;c.ID == 5); //unlikely(?) to be more than one, but technically COULD BE var bobbyCust = db.Customers .FirstOrDefault(c=&gt;c.FirstName == "Bobby"); //clearly could be one or many, so use First? var latestCust = db.Customers .OrderByDescending(x=&gt; x.CreatedOn) .FirstOrDefault();//Single or First, or …
505 .net  linq  linq-to-sql 


5
实体框架VS LINQ to SQL VS ADO.NET具有存储过程吗?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 去年关闭。 您如何按照以下方式对每个人进行评分: 性能 发展速度 简洁,直观,可维护的代码 灵活性 总体 我喜欢我的SQL,因此一直是ADO.NET和存储过程的忠实拥护者,但是最近我对Linq to SQL玩了些,对我写DataAccess层的速度感到震惊,并决定花费有一段时间真的了解Linq to SQL或EF ...还是都不了解? 我只想检查一下,这些技术中没有什么会导致我的研究时间毫无用处的重大缺陷。例如,性能太差了,对于简单的应用程序来说这很酷,但只能带您走远。 更新: 您能否专注于EF VS L2S VS SP而不是ORM VS SP。我主要对EF VS L2S感兴趣。但是我也很想将它们与存储的proc进行比较,因为我很了解纯SQl。

4
将Linq查询结果转换为字典
我想使用Linq to SQL向数据库中添加一些行,但是我想在添加行之前进行“自定义检查”,以了解是否必须添加,替换或忽略传入的行。我想尽量减少客户端和数据库服务器之间的通信量,并最大程度地减少查询数量。 为此,我希望获取验证所需的尽可能少的信息,并且在过程开始时仅获取一次。 我当时正在考虑做这样的事情,但是显然,这是行不通的。有人有主意吗? Dictionary&lt;int, DateTime&gt; existingItems = (from ObjType ot in TableObj select (new KeyValuePair&lt;int, DateTime&gt;(ot.Key, ot.TimeStamp)) ) 我最后想要的是一个Dictionary,而不必从TableObject下载整个ObjectType对象。 我还考虑了以下代码,但是我试图找到一种正确的方法: List&lt;int&gt; keys = (from ObjType ot in TableObj orderby ot.Key select ot.Key).ToList&lt;int&gt;(); List&lt;DateTime&gt; values = (from ObjType ot in TableObj orderby ot.Key select ot.Value).ToList&lt;int&gt;(); Dictionary&lt;int, DateTime&gt; existingItems = …

12
如何仅将Linq中DateTime类型中的没有日期的Date与带有实体框架的SQL进行比较?
有没有一种方法可以比较两个DateTime变量,Linq2Sql但是可以忽略“时间”部分。 该应用程序将项目存储在数据库中并添加发布日期。我想保留确切的时间,但仍然可以按时完成日期。 我想进行比较12/3/89 12:43:34,12/3/89 11:22:12而忽略了一天中的实际时间,因此两者都被认为是相同的。 我想我可以将一天中的所有时间都设置为00:00:00比较之前,但实际上我确实想知道一天中的时间,我也只想按日期进行比较。 我发现一些具有相同问题的代码,它们分别比较年,月和日。有一个更好的方法吗?

8
如何使用linq扩展方法执行左外部联接
假设我有一个这样的左外部联接: from f in Foo join b in Bar on f.Foo_Id equals b.Foo_Id into g from result in g.DefaultIfEmpty() select new { Foo = f, Bar = result } 如何使用扩展方法表达相同的任务?例如 Foo.GroupJoin(Bar, f =&gt; f.Foo_Id, b =&gt; b.Foo_Id, (f,b) =&gt; ???) .Select(???)
272 c#  linq-to-sql  lambda 



16
返回匿名类型的结果?
使用下面的简单示例,使用Linq将多个表中的结果返回到SQL的最佳方法是什么? 说我有两个表: Dogs: Name, Age, BreedId Breeds: BreedId, BreedName 我想把所有的狗都还给他们BreedName。我应该让所有的狗都使用这样的东西而没有问题: public IQueryable&lt;Dog&gt; GetDogs() { var db = new DogDataContext(ConnectString); var result = from d in db.Dogs join b in db.Breeds on d.BreedId equals b.BreedId select d; return result; } 但是,如果我想要带有品种的狗并尝试这样做,则会遇到问题: public IQueryable&lt;Dog&gt; GetDogsWithBreedNames() { var db = new DogDataContext(ConnectString); var …
194 c#  linq  linq-to-sql 

3
如何使用方法语法在linq中连接到sql?
我已经在LINQ to SQL示例中看到了很多有关如何进行查询语法联接的示例,但是我想知道如何使用方法语法进行联接吗?例如我该如何做以下 var result = from sc in enumerableOfSomeClass join soc in enumerableOfSomeOtherClass on sc.Property1 equals soc.Property2 select new { SomeClass = sc, SomeOtherClass = soc } 用.Join()?谁能说明或提供另一个简单的例子?

9
了解LINQ [关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 2年前关闭。 改善这个问题 总览 LINQ是我在这个网站上问过很多的问题之一。我提出的问题涉及面很广,而且种类繁多,而且往往没有太多的背景信息。因此,为了巩固我在Linq上获得的知识,我在发布此问题,以期在我继续学习LINQ时使用其他信息来维护和更新它。 我也希望它对其他想了解LINQ的人来说是有用的资源。 什么是LINQ? 从MSDN: LINQ项目是.NET Framework扩展集的代号,该扩展集包含语言集成的查询,设置和转换操作。它使用查询的本机语言语法扩展了C#和Visual Basic,并提供了类库以利用这些功能。 这意味着LINQ提供了一种使用通用语法查询各种数据源的标准方法。 LINQ有哪些口味? 当前,Microsoft提供了一些不同的LINQ提供程序: Linq to Objects,使您可以对任何IEnumerable对象执行查询。 Linq to SQL,它允许您以面向对象的方式对数据库执行查询。 Linq to XML,使您可以查询,加载,验证,序列化和操作XML文档。 如Andrei建议的实体的Linq Linq到数据集 还有很多其他的,这里列出了很多。 有什么好处? 查询多个数据源的标准化方法 编译查询的时间安全 在内存对象上执行基于集合的操作的优化方法 调试查询的能力 那我可以用LINQ做什么呢? Chook提供了一种输出CSV文件的方法。 杰夫(Jeff)显示了如何从数组中删除重复项。 鲍勃(Bob)从数据表中获取了有序的列表。 马克思(Marxidad)显示了如何对数组进行排序。 达纳(Dana)获得了使用Linq实现快速排序的帮助。 从哪儿开始? 以下是GateKiller的问题的链接摘要: Scott Guthrie 在他的博客中提供了Linq的简介。MSDN上 的LINQ概述 ChrisAnnODell建议您查看以下内容: 迷上了Linq 101个Linq样本 LinqPad …

22
LINQ-to-SQL与存储过程?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我看了一下StackOverflow上的“ LINQ初学者指南”(LINQ初学者指南),但是有一个后续问题: 我们将要启动一个新项目,其中几乎所有数据库操作都将是相当简单的数据检索(该项目的另一部分已经在写数据了)。到目前为止,我们的大多数其他项目都使用存储过程来处理此类事情。但是,如果更有意义,我想利用LINQ-to-SQL。 因此,问题是这样的:对于简单的数据检索,LINQ-to-SQL或存储的proc哪种方法更好?任何特定的赞成或反对? 谢谢。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.