草庐IT

Linq2XSD

全部标签

c# - IEnumerable Linq 方法是线程安全的吗?

我想知道Linq扩展方法是否是原子的?或者我是否需要在任何类型的迭代之前锁定跨线程使用的任何IEnumerable对象?将变量声明为volatile对此有任何影响吗?总而言之,以下哪项是最好的线程安全操作?1-没有任何锁:IEnumerable_objs=//...varfoo=_objs.FirstOrDefault(t=>//somecondition2-包括锁定语句:IEnumerable_objs=//...lock(_objs){varfoo=_objs.FirstOrDefault(t=>//somecondition}3-将变量声明为volatile:volatileIE

c# - PagedList 使用 LINQ Skip and Take,但使用结果计数显示分页

我正在尝试显示基于类别过滤器和ItemsPerPage的过滤后的产品列表,但在尝试将其与PagedList一起使用时遇到了一些问题。如果我需要编写自己的分页代码或者有没有办法使用PagedList获得我需要的结果,具有PagedList专业知识的人可以给我建议。我正在使用LINQ的Skip&Take函数来仅获取需要在当前页面上显示的行数,但我仍然希望分页链接根据过滤器的总计数显示页面。例如:我的搜索过滤器找到了50个结果,但由于我每页的行是10个项目,我使用LINQ的Skip()和Take()只返回10行。我仍然需要在我的View.cshtml中显示页面链接>现在使用默认的PagedL

c# - LINQ to Objects 连接两个集合以在第一个集合中设置值

我有以下EntityFramework查询:varresults=fromrindb.Resultsselectr;我正在使用AutoMapper映射到另一种类型:varmapped=Mapper.Map,IEnumerable>(results);在我的Objects.Result类型中,我有一个名为reason的属性,它不是来自数据库。它来自另一个来源,我需要基本上将其填充回我的映射类型:varreasons=newList{newReason{Id=1,Reason="asdf..."}};我需要将原因与我的映射集合连接起来,并使用我的原因集合中的值在我的映射集合中设置Reaso

c# - 如何使用LINQ实现Left Excluding JOIN?

如何使用LINQ实现LeftExcludingJOIN?在SQL:SELECTFROMTable_AALEFTJOINTable_BBONA.Key=B.KeyWHEREB.KeyISNULL 最佳答案 LEFTJOIN需要DefaultIfEmpty(),然后可以检查连接值是否为null:varresult=fromainTable_AjoinbinTable_Bona.Keyequalsb.Keyintojfrombinj.DefaultIfEmpty()whereb==nullselectnew{...};

c# - 如何让 LINQ 根据文化进行排序?

假设我有一个包含瑞典语单词的字符串列表:banan、äpple、apelsin、druva.现在我想对这个列表进行排序(请记住,这是真实查询的一个非常简化的版本):varresult=fromfinfruits//Thelistmentionedaboveorderbyfselectf这将给我:apelsin、äpple、banan、druva。但是,根据瑞典字母表,我应该得到:apelsin、banan、druva、äpple我尝试将System.Threading.Thread.CurrentThread.CurrentCulture更改为sv-SE但这似乎并没有真正影响它。我必须

c# - LINQ 语句中匿名类型的等效 VB.NET 语法是什么?

我正在尝试将一些C#LINQ代码转换为VB.NET,但一直纠结于如何在VB.NET中声明匿名类型。.Select(ci=>new{CartItem=ci,Discount=DiscountItems.FirstOrDefault(di=>di.SKU==ci.SKU)})如何将C#的new{...}语法转换为VB.NET? 最佳答案 new{...}变成VB.NET中的新功能{...},或NewWith{Key...}如果您想使用Key属性(它允许您比较两个匿名类型实例,但不允许更改这些属性的值)。所以我猜你的陈述应该是这样的:.S

c# - FindAsync 和 Include LINQ 语句

我目前得到的代码工作正常publicasyncTaskDetails(Guid?id){if(id==null){returnnewHttpStatusCodeResult(HttpStatusCode.BadRequest);}ItemDetailModelmodel=newItemDetailModel();model.Item=awaitdb.Items.FindAsync(id);if(model.Item==null){returnHttpNotFound();}returnView(model);}但我想再包含1个表,不能使用FindAsyncpublicasyncTask

c# - 使用 LINQ 在多个属性中查找重复项

给定一个具有以下定义的类:publicclassMyTestClass{publicintValueA{get;set;}publicintValueB{get;set;}}如何在MyTestClass[]数组中找到重复值?例如,MyTestClass[]items=newMyTestClass[3];items[0]=newMyTestClass{ValueA=1,ValueB=1};items[1]=newMyTestClass{ValueA=0,ValueB=1};items[2]=newMyTestClass{ValueA=1,ValueB=1};包含重复项,因为有两个MyTe

c# - Linq orderby,从特定数字开始,然后返回到最低

我有一组数据,我想从一个特定的数字开始重新排序,然后,当达到最高数字时,返回到最低数字,然后继续递增。例如,对于序列(1,2,3,4,5,6),如果4是特定数字,则顺序将变为(4,5,6,1,2,3)。使用linq和c#有可能吗? 最佳答案 Listlist=newList(){1,2,3,4,5,6};intnum=4;varnewList=list.SkipWhile(x=>x!=num).Concat(list.TakeWhile(x=>x!=num)).ToList(); 关于c

c# - 使用 xsd.exe 生成 c# 文件,出现错误和警告

这是我正在运行的命令:xsd.exe-c-l:c#D:\Documents\DEV\SARPilot\Docs\schemas\06-141r2\06-141r2.xsd这些是我遇到的错误:Microsoft(R)XmlSchemas/DataTypessupportutility[Microsoft(R).NETFramework,Version2.0.50727.3038]Copyright(C)MicrosoftCorporation.Allrightsreserved.Schemavalidationwarning:UndefinedcomplexType'http://www