草庐IT

Linq2XSD

全部标签

c# - LINQ 插入提交 : NullReferenceException

我有这个代码:usingDC=MV6DataContext;usingMV6;//BusinessLogicLayer//...publicDC.MV6DataContextdc=newDC.MV6DataContext(ConnectionString);IPip=newIP(Request.UserHostAddress);dc.IPs.InsertOnSubmit(ip);dc.SubmitChanges();//inBusinessLogiclayer:publicclassIP:DC.IP{publicIP(stringaddress){...}}在尝试InsertOnSub

c# - LINQ .Cast() 扩展方法失败但(类型)对象有效

为了在某些LINQtoSQL对象和DTO之间进行转换,我们在DTO上创建了显式转换运算符。这样我们就可以执行以下操作:DTOTypeMyDTO=(LinqToSQLType)MyLinq2SQLObj;这很有效。但是,当您尝试使用LINQ.Cast()扩展方法进行转换时,它会抛出一个无效的转换异常,指出无法将类型Linq2SQLType转换为类型DTOType。即以下不起作用ListNames=dbContact.tNames.Cast().ToList();但下面的工作正常:DAL.tNameMyDalName=newDAL.tName();DTO.NameMyDTOName=(DT

c# - LINQ to SQL 查询,其中字符串以通用列表中的元素开头

我希望更新我的查询之一,因为搜索要求已更改。最初,用户要输入单个SKU和制造商。搜索产品目录的日期范围。所以这就是我使用的。DateTimestartDate=...;DateTimeendDate=...;stringprodSKU=TextSKU.Text.Trim();varresults=fromcindb.Productswherec.is_disabled==false&&c.dom>=startDate&&c.dom现在要求说用户可以在文本框中输入以逗号分隔的SKU列表进行搜索。我感到困惑的是如何在mfg.xml中找到所有产品。以skuList中的任何SKU开头的日期范围

c# - LINQ 中的实体附件问题

我试图在从表单POST接收到LINQ实体后将其附加到数据上下文。但是,我得到的只是以下异常:Anentitycanonlybeattachedasmodifiedwithoutoriginalstateifitdeclaresaversionmemberordoesnothaveanupdatecheckpolicy.我也试过附加原始行,如下所示:dataContext.People.Attach(person,originalPerson);在这种情况下,我得到以下异常:Objectreferencenotsettoaninstanceofanobject.这是我Controller

c# - Entity Framework + LINQ + "Contains"== 超慢?

在尝试重构一些最近变得非常慢的代码时,我遇到了一个代码块,它的执行时间超过5秒。代码由2条语句组成:IEnumerableStudentIds=_entities.Filters.Where(x=>x.TeacherId==Profile.TeacherId.Value&&x.StudentId!=null).Select(x=>x.StudentId).Distinct();和_entities.StudentClassrooms.Include("ClassroomTerm.Classroom.School.District").Include("ClassroomTerm.Tea

c# - Linq-to-SQL 中的 SubmitChanges 和 Entity Framework 中的 SaveChanges 之间的技术区别是什么?

Linq-to-SQL中的SubmitChanges和EntityFramework中的SaveChanges在技术上有什么区别?我们知道SubmitChanges是DataContext类的一个概念,而SaveChanges是ObjectContext的一个方法。还有其他区别吗?谢谢 最佳答案 来自MSDN:SaveChanges在事务中运行。如果无法保留任何脏的ObjectStateEntry对象,SaveChanges将回滚该事务并抛出异常SubmitChanges启动事务,如果在执行SubmitChanges时发生异常,则将

c# - 使用 Linq 除了不像我想的那样工作

List1包含项目{A,B}和List2包含项目{A,B,C}.我需要的是在使用ExceptLinq扩展时返回{C}。相反,我返回了{A,B},如果我在表达式中翻转列表,结果是{A,B,C}。我是不是误解了Except的意思?是否有其他我没有使用的扩展程序?我已经浏览并尝试了很多关于这个问题的不同帖子,但到目前为止都没有成功。varexcept=List1.Except(List2);//ThisisthelineIhavethusfar编辑:是的,我正在比较简单的对象。我从未使用过IEqualityComparer,了解它很有趣。感谢大家的帮助。问题是没有实现比较器。链接的博客文章和

c# - 具有匿名类型和用户定义类型的 LINQ 选择查询

匿名类在C#中具有只读属性。这通常用于在linqselect查询中声明以从数据库中获取特定值。在我的代码中,我有以下查询。让我困惑的是使用new语句选择匿名类的新对象。我有一个模型类StudentClerkshipsLogModel。当我使用模型名称时,查询结果允许编辑。varquery=(fromentityin_tblStudentClerkshipsLog.GetQueryable()whereentity.StudentID==intStudentIDselectnewStudentClerkshipsLogModel{StudentClerkshipID=entity.Stu

C# 对具有相同类型的不同属性重新使用 LINQ 表达式

我有一个类(class)有几个int属性:classFoo{stringbar{get;set;}inta{get;set;}intb{get;set;}intc{get;set;}}我有一个LINQ表达式,我希望在List上使用.我希望能够使用此表达式通过查看三个属性中的任何一个来从列表中过滤/选择。例如,如果我按a过滤:returnlistOfFoo.Where(f=>f.a>=0).OrderBy(f=>f.a).Take(5).Select(f=>f.bar);但是,我希望能够使用f.a中的任何一个来做到这一点。,f.b,或f.c.我不想重新键入LINQ表达式3次,而是希望有一

c# - 使用 LINQ 将 DataRow 转换为字典

我需要使用LINQ将DataRow转换为Dictionary。下面的代码将获取DataRow,下一步是我需要将其转换为字典(ColumnName,RowVale)varWorkWeekData=fromdatainmWorkWeekData.AsEnumerable()wheredata.Field("Code")==codeselectdata; 最佳答案 这绝对有可能,是的:vardict=row.Table.Columns.Cast().ToDictionary(c=>c.ColumnName,c=>row[c]);