LINQ2SQL在执行查询时是否使用表索引?在为LINQ2SQL提供给它执行的SQL编译执行计划时,数据库本身使用数据库表索引。它对LINQ2SQL完全隐藏,LINQ2SQL本身通过ADO.NET访问数据库
因此,简单的答案是,是的,LINQ2SQL使用表索引,但只是默认情况下,因为数据库本身使用它们。LINQ2SQL将创建适当的SQL,然后将其交给MS-SQL服务器执行。然后,服务器将使用索引来加速查询
了解LING2SQL在构建查询时是否考虑索引可能会很有趣
我有一个ef模型,我想使用objectquery“查询”它。到目前为止,我创建的objectquery如下所示:
myQuery = new ObjectQuery<T>(mergeOption, context)
myQuery=newobjectquery(合并选项,上下文)
是否可以创建objectquery,而不必从一开始就指定上下文权限(稍后再设置)?在我的应用程序中,我有多个线程需要获取基本查询、扩展和执行它。使用函数,而不是变量:
protected ObjectQ
我在一个集合中有以下对象:
交易:
Type=“Widget”
日期=“2011年3月1日”
Name=“Foo”
交易:
Type=“Widget”
日期=“2011年3月4日”
Name=“Bar”
交易:
Type=“Gadget”
日期=“2011年3月2日”
Name=“Baz”
交易:
Type=“Gizmo”
日期=“2011年3月1日”
Name=“谁”
交易:
Type=“Gizmo”
日期=“2011年3月2日”
Name=“什么”
交易:
Type=“Gizmo”
日期=“
我有一个简单的sql查询:
select c.LastName, Sum(b.Debit)- Sum(b.Credit) as OpenBalance from Balance as b
inner join Job as j on (b.Job = j.ID)
inner join Client as c on (j.Client = c.ID)
Group By c.LastName
我正在尝试将其转换为在linq中工作,如下所示:
from b in Balance
join j in
好的,问题来了
我有一个表(实际上是一个视图,但它是不相关的),其中包含某个时间项目的价格。字段:
项目名称
价格
时间戳
此字段中还有其他字段,这些字段也必须是可访问的。比如列和一些计算过的数字。这基本上是一个带有字段的对象,我们有一个相当长的表(数百万行)
我需要加入一个项目名称列表,列出它们的最新价格,我想在linq中这样做。在纯SQL中,这已经不好玩了。我基本上是寻找一个“视图”(IQueryable用于进一步合并)定义,该定义只包含给定项名称的最新对象。这样就可以将JOIN语句与另
我想在名为ZipTable的数据表中查询不同的状态名,并使用alpha-beta顺序列出状态名,但它不起作用。我错过什么了吗
public List<String> GetAllStates()
{
ZipTableDataContext dc = new ZipTableDataContext(_connString);
List<String> query = (from z in dc.ZipTables
我应该如何构造Linq查询以返回数据库中最流行的标记的列表或Ienumerable(顺便说一下,我使用的是EF4.1)
目前我有:
var tagsListing = db.Tags
.GroupBy(q => q.Name)
.OrderByDescending(gp => gp.Count())
我有一个XML文件,我正试图按属性“Width”对其进行分组。以下是一个片段:
<nodes>
<FieldType Name="1000" OriginalName="1000" ScriptName="" SqlType="12" Width="1000" EnableValues="0" Scale="0" ForceMatch="0" ForceMatchCaseSensitive="0" SortAlphabetically="0" />
<FieldTy
为了保存多个DB调用,并且由于它来自同一个表,我在linq查询中查找一个字段,以返回一个包含两个IEnumerable字段的对象
我在这里写了一些伪代码来说明我要做的事情,但它不是有效的Linq代码。有人知道怎么做吗?(弗雷德和乔都是数不清的)
您希望创建一个匿名类型,然后在其中创建另一个匿名类型
我猜您的两个系列中都有一个输入错误,您使用了j和k,但选择了jobs
var c = from jobs in model.jobView
select new
当将EqualityComparer作为最后一个参数传递给Linq Join方法时,它并没有使用它的Equals方法,而是出于某种原因使用GetHashCode来比较项
有没有可能让它改用Equals
var ss = new string[] { "aa", "bb", "cc" };
var zz = new string[] { "aa", "zz", "cc" };
var res = ss
.Join(zz,
我是ravendb的新手,我有两个问题
我在那里存储了大约65k个对象,但只返回了128个:为什么会这样?(使用Robert P.OpenInitializedStore扩展)
let printStoreData()=
使用store=DocumentStore.OpenInitializedStore()
使用session=store.OpenSession()
设qs=session.Query()
printfn“%A”(qs.ToList()|>Seq.length)
printS
在Linq中,我看到使用了Include关键字。
包含的目的是什么
x=> x.Lists.Include(l => l.Title)
.Where(l => l.Title != String.Empty)
Include方法用于强制EF急切地从子关系加载行
您的示例代码已损坏Include()只能在导航属性上调用。您是否查看了文档?
我在使用UbuntuPrecise,并按照找到的说明安装了F#。
我还安装了简单的F#程序,因此能够测试和编译这些程序(既可以在emacs F#mode REPL上运行,也可以生成在mono下运行的可执行文件)
然而,声明:
open System.Xml.Linq
在emacs F#mode REPL和从bash shell调用fsharpc时失败,错误相同:
error FS0039: The namespace 'Linq' is not defined
我在C#中找到了一个SO,尽管
以下是Mongo LINQ提供程序失败的JSON文档:
{"results":
{"text":"@twitterapi http://tinyurl.com/ctrefg",
"to_user_id":396524,
"to_user":"TwitterAPI",
"from_user":"jkoum",
"metadata":
{
"result_type":"popular",
"recent_retwe
我有一个使用实体框架访问的数据库。这里有一个片段
如您所见,一个层可以有多个MatchNode,每个MatchNode可以有多个LenderMatchNode
我有一个整数变量fundedCount
我要做的是过滤一个Tier/MatchNode/LenderMatchNode的列表,其中fundedCount介于LenderMatchNode.minFundered和lendermatchnodemaxFundered之间
本质上,这应该返回一个层列表,该层列表应该有一个MatchNode列
标签: Linq
linq-to-entitiesentity-framework-5
我想从数据库中选择角色并创建一个UsersViewModel列表。但是,实体框架正在尝试在SQL端执行投影,在SQL端没有与Roles.GetRolesForUser等效的对象
还有什么替代方法,或者我应该如何在查询中执行任何方法?最简单的方法是从SQL中获取所需的数据,然后在查询执行后,遍历结果并在代码中填充函数中的其他详细信息
例如:
var users = from u in db.UserProfiles select new UsersViewModel{
标签: Linq
entity-framework-5automapper-3
好吧,我真的很难找到一个好的例子来说明我需要做什么。所以,我在这里问一下
假设我有一个名为Customer的实体类(EF)和一个名为CustomerServiceWModel的对应视图模型类
使用AutoMapper,我创建了以下映射:
Mapper.CreateMap<CustomerViewModel, Customer>();
Mapper.CreateMap<Customer, CustomerViewModel>();
Mapper.CreateMap(
当linq语句不包含任何元素时,是否有一种方法可以循环使用linq语句的下划线结果的属性
我想创建一个DataTable并将各个属性添加为列,但似乎只有在linq语句包含项时才能这样做。请查看下面我的当前代码
private static void GetProperties<T>(IEnumerable<T> query)
{
DataTable dt = new DataTable();
PropertyInfo[] queryInfo = nul
根据下表,我希望获得所有员工为active==1的部门名称。我特别想要一个LINQ查询
根据以下数据,仅应列出Z部门
EmpId,EmpName,DepartmentId,Active
"1", "A", "1", "0"
"2", "B", "1", "1"
"3", "C", "1", "1"
"4", "D", "2", "0"
"5", "E", "3", "
LINQ中的表达式树是什么?有人能给我指出一个有代码和解释的资源吗?表达式树是一个所有节点都是s的树(请放心)
我不完全确定您是否在询问表达式树的具体应用,因此这有点冗长,但应该给出使用它们的一般方法。MSDN有一些,并且在中始终有实际类的文档。我相信当我第一次看到这些表达时,我发现它们很有用,但我没有正确地回忆起来
您可能熟悉语法树的概念。例如,2+2通常可视为具有语法树:
+
/ \
2 2
表达式树在概念上非常相似。是一个笑脸树,其中所有节点都是一个表达式。表达式2+2将由代码
我这里有两张桌子:
拍卖和物品
一次拍卖有一件物品。
1.Aricle有x次拍卖
现在,我加载拍卖列表:
using (APlattformDatabaseDataContext dc = new APlattformDatabaseDataContext())
{
List<Auktion> auctionlist = (from a in dc.Auktion
我们有课
public Invoice: EntityObject
{
public EntityCollection<InvoicePosition> Positions { get {...}; set{...}; }
...
}
public InvoicePosition: EntityObject
{
public string GroupName { get {...}; set{...}; }
}
公共发票:EntityObject
{
公共
我有一个web应用程序,它在尝试连接到另一台服务器上托管的数据库时接收到以下内容
建立与SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。提供程序:命名管道提供程序,错误:40-无法打开到SQL Server的连接
现在,这里的问题是连接字符串和服务器路径区域都是完美的
当通过cassini在我的本地机器上运行时,站点运行正常。连接字符串是正确的。
托管在同一服务器上的其他站点可以访问
我有一个XDocument。此文档中的所有节点都有一个属性UserId。我想将此属性的值0更改为1。如何使用Linq查询实现这一点。我用过这个
MyNewUserPermission.Descendants("menuNode").Single.SetAttributeValue("userId", Me.UserId)
它不工作。显示错误
Sequence contains more than one element
xml文件
<menuNode url="" title="Reg
如何选择哪种ORM适用于web应用程序?e、 如果我们使用Linq,那么为什么不使用nhibernate呢?哪一个更好,为什么更好,我认为这在很大程度上取决于您正在构建的应用程序
另一方面,NHibernate功能非常强大,可以定制来做任何事情。我们最近抛弃了旧的ORM,搬到了NHibernate,因为没有它,我们无法做我们需要做的事情。您可以将Linq与NHibernate一起使用。但以最流行的ORM为例。这是大多数开发人员使用的
这将更容易找到一个开发人员来维护和增强项目,也将更容易找到解决
如何使用Linq对数据表进行排序?我尝试了以下操作,但收到错误:
用户代码未解析InvalidCastException。不允许指定强制转换
var query = from c in allFiles.AsEnumerable() orderby c.Field<DateTime>(1)
descending select c;
var query=allFiles.AsEnumerable()orderby c.Field(1)中的c
降序选择c;
这表明至少在某些行中,字段
我有一个客户订单数据库。
我想使用Linq to EF查询数据库,为每个客户带回最近的3,4…n订单
注:
客户1在上一个小时内可能刚下了12个订单;但是,客户2可能从上周起就没有做过
我一辈子都搞不懂如何用linq lambda表达式编写查询来获取数据集
有什么好主意吗
编辑:
客户和订单是一种简化。我查询的表实际上是到各种web服务的出站消息的记录。这似乎更容易描述为客户和订单。关系是一样的。
我正在构建一个任务,用于检查每个web服务的最后n条消息,以查看是否存在任何故障。我们需要Web服
标签: Linq
ironpythonexpression-trees
我使用此代码使用IronPython执行python表达式
ScriptEngine engine = Python.CreateEngine();
ScriptScope scope = engine.CreateScope();
scope.SetVariable("m", mobject);
string code = "m.ID > 5 and m.ID < 10";
ScriptSource source =
engin
我知道对数据库进行两次点击就可以轻松完成这项工作,但我一直在尝试使用一条LINQ语句来加载order by ID及其order项,同时将它们转换为ViewModel对象:
var query = from orderLine in db.PurchaseOrderLines
where orderLine.PurchaseOrderId == id
orderby orderLine.Id
group orderLine b
在linq中,.Where接受一个表达式>谓词,我可以用F#as来写它
bool>
我正在使用FSharp.Powerpack从一个引号构建表达式,但它给了我一个MethodCallExpression。深入来看,powerpack代码正确地构建了lambda,但将其包装在一个Convert调用中(为什么?)。我想知道将参数转换为方法调用(lambda)是否最终会得到表达式>我需要的
所以问题是为什么要调用Convert,以及如何实际获得带有Func签名的lambda。我记不清在哪里找到了这段
如何实现a+1等于b?即使在我删除+1时,仍然会出现这样的错误:“join子句中的一个表达式的类型不正确…”类似这样的错误:
var recordhoursQuery = from w in crnnsupContext.WorkHoursHistories
join p in crnnsupContext.ProvStates on w.Province equals p.ProvinceStateID
我有一个对象,可以指定一个用户或一个工作组。用户可以直接分配,也可以通过工作组分配,但对象不能同时设置这两个参数
public class Procedure
{
.....
public Guid? AssignedToId {get;set;} //Foreign Key to AssignedTo
public Contact AssignedTo {get;set;} //Single user assignment
public Guid
我有以下代码:
List<Item> csItems = (from i in context.Items
where i.CSItem == true
select i).ToList<Item>();
csItems.ForEach(i => i.Active = false);
context.SaveChanges();
List csItems=(来自context.
我对此查询有问题,它抛出了一个错误
var TotalToDatePayable = ( from ori in db.GetAll<WMPORI>()
where ori.CTMSysID == ctmSysId
select ori.ExB4Taxes).Sum();
我尝试了下面的代码,但没有解决我的问题:
var TotalToDatePayable = (Deci
我需要大家的帮助
我有一个字符串:“123456”
如何使用Linq分别获取“1”、“2”、“3”、“4”、“5”、“6”
很多
"123456".First()
此外,您还可以选择包含谓词函数。比如说,
"123456".First(n => n > '1')
但是你可以考虑使用FURACH语句。我不确定这是否是LINQ的一部分
var str = "123456";
var digits = str.Select(c => c.ToString()).ToArray()
基本上,我有一个LINQ数据库上下文及其模型。通常,如果数据库不存在,我会在SQL上下文中创建数据库(上下文是单例的,每次访问它时都会检查)
如果我在第一次启动时向数据库添加数据,一切都会正常工作。但是,如果我在应用程序的第一次启动时没有插入任何数据,那么在后续的发布中,我会得到
SqlCeException:指定的表不存在[TableName]
我不知道如何更具体地解释它,但如果我没有在第一次启动时插入任何数据,那么每当我在第二次启动应用时执行LINQ查询时,就会立即出现异常。如果我在第一次发
在数据库中,我有一个返回不同数值的过程用RETURN这个词
我在应用程序中使用LINQ的这个过程,但它总是返回-1而不是正确的数字
示例T-SQL:
Create PROCEDURE EmailStatus
AS
BEGIN
IF NOT EXISTS (SELECT * FROM msdb.sys.service_queues WHERE name = N'ExternalMailQueue'
AND is_receive_enabled =
我的linq查询返回重复记录,如下所示,我必须如何在此linq查询中使用distinct关键字
var draft_recieved = from df in _DataContext.tblDrafts
from dfBody in _DataContext.DraftBodies
from sendUser in _DataContext.tblSends
wher
如何创建字符串的扩展方法以获取和
创建Sumstring扩展方法
List<myclass> obj=new List<myclass>()
{
new myclass(){ID=1,name="ali",number=1},
new myclass(){ID=1,name="karimi",number=2},
new myclass(){ID=2,name="mohammad",number=4},
new myclass(){ID=2
标签: Linq
datatableleft-join
我有一个包含以下数据的数据表
Table 1
880000000010747
880000000012235
880000000000010
880000000015086
880000000000028
Table 2
880000000014718
880000000014928
880000000009684
880000000013184
880000000010747
如何合并表并返回下面
如果我有下面这样的代码,Any和Where是否会两次调用数据库
if (context.SomeTable.Any(x => x.SomeValue == "A"))
var result = context.SomeTable.Where(x => x.SomeValue == "A")
是的,我希望是这样
你想如何处理这个问题取决于上下文。例如,您可能需要:
var result = context.SomeTable
.Wher
总而言之,它可以工作每次您都必须将其分配给查询。extensions方法每次基本上对进行两次调用时都返回一个新的IQueryable,其中创建一个新的IQueryable放弃它(因为它从未分配给变量)
IQueryable OrderQuery=db.Orders;
var日期条件=有效载荷[“日期”];
如果(日期条件!=null)
{
var dates=日期\条件为日期时间?[];
OrderQuery=OrderQuery.Where(o=>o.CreatedOn>=dates[0]);
我有一个项目列表:list
我想将其转换为项目+季度->列表
项目还包含另一个列表,即ItemDetails
如何将Item对象复制到另一个Item对象,并使用LinQ从CreatedDate检索quarter
我还添加了将日期转换为季度的季度结构。但我无法将list转换为list
类项目{
公共int Id{get;set;}
公共日期时间CreatedDate{get;set;}
公共字符串名称{get;set;}
公共列表项详细信息{get;set;}
}
公共结构区
{
公共季度(国际年
我在弄清楚如何根据子项对父项列表进行有效排序时遇到了一些问题
我不能只对子项进行排序。我需要子项排序的结果来影响父列表的排序
基本上,我要做的是按照父母的名字降序排列
一旦我已经有了一份记忆中的父母名单,有没有一种“灵气”的方式来做到这一点?如果是这样的话,你能负担得起的任何帮助都会很好
这里有一个例子
//What I am trying to do is to figure out how to sort the order of parent1, parent2, parent3
//b
我有一个复杂的查询,需要将其分解为不同的方法,以满足NFR代码复杂性标准
我知道仅仅为了满足所需的条件,这是不好的,但是这个查询可以被分解成更小的块吗
var query = (from a1 in a
join b1 in b
on a1.id1 equals b1.id1
join c1 in c
on b1.id equals c1.id
jo
我想,如果用户从下拉列表中选择一个项目,数据库中包含的所有行都将显示该项目。有没有关于如何使用LINQ查询检索数据的建议
这是我的模型课
public class Category
{
public int Id { get; set; }
public string CategoryName { get; set; }
public string Description { get; set; }
public virtual ICollection<
我希望能够像使用简单的DbSet
这是可行的,但当我尝试使用从存储过程导入的函数时:
var bals = db.GetCustomBalances("2015")
.Where(b => db.Balances
.Any(b2 => b.Number.StartsWith(b2.Number)&&b2.Number!=b.Number))
.ToList();
我的目标是将这个foreach逻辑转换为单个LINQ查询
foreach (var anyItem in gridReference.Children)
{
var enumerableCheck = anyItem as ListBox;
if (enumerableCheck != null)
{
foreach (var collectionItem in enumerableCheck.Items)
{
我正在尝试创建一个带有公共ProductGroupId的产品列表。每个产品都有任意数量的标识符(如产品编号、EAN、ISBN等)和任意数量的属性(如颜色、高度、大小等)。每个属性都有任意数量的可选选项(如颜色的“红色”、“绿色”等)
产品存储在产品中
标识符标签(“EAN”、“ISBN”等)存储在ProductIdentifiers中,标识符的产品值存储在IdentifierForProducts中。例如:EAN(标签):7044304034373(值)
属性标签(例如“颜色”)存储在Produ
我有一个搜索表单,用户可以在其中搜索汽车零件,我需要过滤他们是否为PartNumber字段提供了值:
var query = db.Car.Include(u => u.CarPart);
if (!string.IsNullOrWhiteSpace(model.PartNumber))
{
query = query.Where(u => u.CarPart.PartNumber == model.PartNumber);
}
但给出了这个错误:
ICollection不
上一页 1 2 3 4 5 6 ...
下一页 最后一页 共 206 页