【c#-在LINQ JOIN中添加第二个条件】教程文章相关的互联网学习教程文章

c# – Entity Framework / Linq – 获取动态指定属性的不同值【代码】

我需要获取实体集合的特定属性的不同值列表. 所以,假设表A有字段x,y,z,1,2,3,其中x是PK(因此离开表格). 我需要获得y,z,1,2或3的所有唯一值,而不必在我的方法中知道我正在获得哪个字段.所以该方法的模式是:public List<ObjectName> GetUniqueFieldValues(string fieldname)“ObjectName”对象是具有两个属性的对象,上述方法将为每个结果填充至少一个属性. 另一个问题中的某个人使用ParameterExpression和Expression类得到了类似的答...

c# – 指定与对象并行linq的任务超时【代码】

我有一个我希望并行处理的图片列表,但是超时.我的旧代码通过分页项目和使用WaitHandles来做到这一点,但我想使用.Net 4中提供的新的Parallel Linq或Tasks库. 以下代码段正在运行,如何为其添加超时? (超时将用于执行的每个任务,而不是所有项目的超时处理)private PictureList FetchPictures(List<Picture> wallResults) { wallResults.AsParallel().WithDegreeOfParallelism(10).ForAll(delegate(Picture p){解决方法...

c# – 如何在Dynamic LINQ中使用Contains时动态键入Cast到字符串?【代码】

我想使用动态LINQ查询来搜索类中所有属性中的一些文本.我正在使用以下函数来创建表达式.我正在将属性名称和搜索文本传递给方法. 在该方法中,如果属性类型是String,那么它工作正常.如果属性类型是int,DateTime,GUID.那它不起作用. 我们知道仅包含元素数组或字符串的方法.我认为属性的值应该输入到字符串.那怎么办呢?解释与解释是完整的帮助. 我收集了this的代码.public static Expression<Func<T, bool>> ContainsExp<T>(string pr...

c# – 使用LINQ获取不同的数字组合【代码】

下面的代码根据1,2,3 = 3,2,1 = 2,3,1的逻辑返回所有不同的组合,因此它只返回该组数字的1个实例. 但是,我想更改该逻辑,以便它返回所有数字集的所有实例. 为了实现这一目标,我需要对“GetPowerSet”下面的LINQ查询做些什么?public void GetPowersets(){List<int> ints = new List<int>(){1,2,2,3,3};var results = GetPowerSet(ints);List<String> combinations = new List<String>();foreach (var result in results){StringBuild...

c# – 在LINQ查询中使用Expression>【代码】

我想定义一个Func< ProductItemVendor,bool>过滤器表达式名为CompareProductItemVendorIds,可以在我的应用程序中使用,主要在实体框架/ LINQ查询中. 我已经了解到,为了能够在LINQ查询中使用此过滤器,我必须将其声明为Expression< Func<>>而不只是Func<>.我理解这个的原因,这对我来说很容易. 但是我在查询中使用该表达式时遇到以下问题. 首先,代码如:ProductItem.ProductItemVendors.FirstOrDefault(CompareProductItemVendorIds)注...

c# – 无法将类型X强制转换为类型Y.LINQ to Entities仅支持强制转换EDM原语或枚举类型【代码】

我完全理解这个错误,但有没有办法实现一些代码,以便linq实体理解我的自定义类型应该被视为十进制基本类型? 我已经创建了一个自定义Money类型,它接受一个构造函数重载的可空小数.它具有隐式运算符重载和所有其他类型的酷爵士乐.我想在我的linq中使用这个自定义类型实体投影,但是标题中的错误. 是否有一个属性,我可以在我的Money类型上声明,“嘿,为了linq投影的目的,我是原始类型十进制”? 是否有某种方式自定义表达式树/访问者可以...

c# – 使用Linq检查孙列表时删除子列表项【代码】

以下代码显示了我如何将数据分配到IEnumerable< UnCompletedJobDetailsBO>中. 有一个列表(IEnumerable< UnCompletedJobDetailsBO>),它有另一个列表(List< JobDetailsBO>),其子列表(List< JobDetailsBO>)上面有一个列表.但是AllocationDetailList只有一个列表项.public IEnumerable<UnCompletedJobDetailsBO> GetControlDetails(DateTime startDate) {var controlDetails =(from booking in db.BookingDetailwhere booking.BookingD...

C#LINQ to XML:如何加入Xml数据【代码】

给出两个这样的XML文件:<Customers><Customer CustomerID="alc">Alice</Customer> </Customer>和<Orders><Order OrderID="001" CID="alc">apple</Order> </Orders>现在我需要加入这两个XML文件并使用内部联接创建一个新文件:<Result><Join><Customer CustomerID="alc">Alice</Customer><Order OrderID="001" CID="alc">apple</Order></Join> </Result>我有这个问题:var result = new XElement("Result",from customer in XEleme...

c# – LINQ选择包含字符串的所有子集合的所有项目【代码】

我正在使用jqueryui自动完成功能来帮助用户选择项目.我无法从对象的子集合中选择正确的项目.对象结构(简化)是public class TargetType {public int Id { get; set; }public string Name { get; set; }public virtual ICollection<SubCategory> SubCategories { get; set; }public TargetType(){SubCategories = new HashSet<SubCategory>();} }public class SubCategory {public int Id { get; set; }public string Name { get; se...

在linq查询中使用C#扩展方法作为谓词【代码】

我实现了扩展方法来规范化这篇文章中描述的字符串:LINQ Where Ignore Accentuation and Case 如果我做这样的事情,这种方法就像一个魅力:employee.AsQueryable().Where(t=>t.Text.ToLower().RemoveDiacritics().Contains("ced"));现在,我想通过动态生成where子句的谓词来更一般地使用它.var values = filters.Select(f => f.Value is string && f.IgnoreAccent?((string)f.Value).RemoveDiacritics():f.Value).ToArray();// Creat...

c# – 如何为LINQPad设置NetFx40_LegacySecurityPolicy?【代码】

当我使用LINQPad的旧库时,我得到NotSupportedException.我发现此异常是由于.NET Framework中的代码访问安全性已弃用. https://msdn.microsoft.com/en-us/library/ee191568(v=vs.110).aspx 所以我添加< NetFx40_LegacySecurityPolicy>根据MSDN文章到LINQPad.config文件,但它仍然导致异常.将配置元素添加到LINQPad.UserQuery.exe.config可以帮助我,但它似乎在启动LINQPad时重新生成. 是否有其他方法为LINQPad添加配置元素? (为什么这...

c# – LINQ to Entities和polymorphism【代码】

假设我有一个简单的模型:public class Movie {public int ID { get; set; }public string Name { get; set; } }和DbContext:public class MoviesContext : DbContext {...public DbSet<Movie> Movies { get; set; } }另外,我在MoviesContext类中有一个方法可以通过子字符串过滤电影,如下所示:return Movies.Where(m => m.Name.Contains(filterString)).Select(m => m);现在假设我想添加一个新模型,比如说:public class Person ...

c# – Linq对象多个语句与单个语句【代码】

在Linq to对象中,此代码之间的执行有任何不同:var changedFileIDs = updatedFiles.Where(file => file.CurrentVersion != file.OriginalVersion).Select(file => file.ID); var changedVaultFiles = filesToUpdate.Where(x => changedFileIDs.Contains(x.ID)); foreach (var file in changedVaultFiles) {Vault.Upload(file); }和这段代码?var changedVaultFiles = filesToUpdate.Where(x => updatedFiles.Where(file => file.Cu...

c# – Linq输出乘以结果【代码】

我有一个像这样的简单SQL查询:SELECT table1.[idGK] , table2.FullName , table2.LgotNamefrom table2join table1 on table2.C_LGT = table1.[idGK] where table1.mcod = 41003 我有正确的输出:idGK | FullName| LgotName ------------------------ 1 |One |Ball 2 |Two |Wog 3 |Three |Aks 5 |Four |Mq...

c# – 用于存储从LINQ到实体的数据的最有效集合?【代码】

多年来,我已经阅读了几个不同的来源,这些来源表明在存储数据集合时,List< T>当你想要插入对象时,它是有效的,并且IEnumerable< T>最适合枚举一个集合. 在LINQ-to-Entities中,有AsEnumerable()函数,它将返回IEnumerable< T>,但在您开始枚举列表之前,它不会解析LINQ语句创建的SQL. 如果我想将LINQ中的对象存储到集合中的实体,然后再查询该集合,该怎么办? 使用此策略会导致通过添加WHERE子句并分别查询每个记录来解析SQL.我特别不想这...