我正在学习Linq,我有两个对象列表。我想将其中一个列表与另一个列表进行比较,看看其中对象的所有属性是否都可以与另一个列表中的属性相匹配。因此,我提供了相应的代码,但我希望将其更改为Linq表达式。
var list1 = new List<Product>
{
new Product{SupplierId = 1,ProductName = "Name1"},
new Product{SupplierId = 2,ProductName = "Name2"},
new Product{SupplierId = 3,Produ
Linq to objects适用于任何IEnumerable对象。变量
string[] foo = new string[] { };
和
var bar = new List<string>();
都是IEnumerable<string>,但是如果我想知道每个数组有多少项,可以在数组上使用Length属性,在列表上使用Count属性。或者我可以使用Linq中的Count方法,它对这两种方法都有效。
问题是: Linq是否提供了某种优化,比如为每个方法实现不同的算法,根据被查询对象的实际类型调用一个或另一个方法?
我的想象是这样的:
if (obj is Arra
我想知道是否/如何使用LINQ做以下事情:我有一个具有一些属性的对象列表和另一个对应于某个属性的不同值的列表。
示例:
A = [{id=1, property=1}, {id=2, property=1}, {id=3, property=2}]
B = [1, 2]
有没有办法只使用LINQ就能实现下面的事情(获得计数列表)?
var counts = new List<int>();
foreach (var b in B)
{
counts.Add(A.Where(a => a.property == b).Count();
}
示例代码:
public cl
在LINQ4.0中,您可以简单地使用.NET快速按特定属性对列表进行排序:
List<Point> list = ...;
sorted = list.OrderBy(p => p.X).ToList(); // sort list of points by X
当你不能使用.NET 4.0LINQ语法时,你能做一些类似的事情吗?
是否有单行排序语法?
PowerShell脚本创建内容类型并将它们分配给列表。当运行SPMetal以生成DataContent类文件时,GUID仅与调用SPMetal的站点集合相关联。Visual解决方案的Linq查询不适用于另一个站点集合,因为PowerShell脚本使用不同的GUID在另一个站点集合上创建内容类型。
是否有一种方法可以在PowerShell中手动指定GUID,或者在Visual中覆盖内容类型的GUID,因此Linq to SharePoint查询在任何网站集合上都会查询正确的内容类型GUID?
提前谢谢你。
我有一个对象列表,其中包含一个名为"Color“的字符串属性。我需要使用空格分隔符将字符串拆分为一个列表,并将该列表与另一个列表进行比较,以查看是否有任何包含的字符串与Linq匹配。
string searchString = "I like sand";
List<string> searches = searchString.Split(' ').ToList();
//Determine if matches exists anywhere between the 2 strings using linq
List<my
我正在处理C# 6中的LINQ查询。如果给定的list<int>包含任何Id为list<T>的元素,我会尝试选择列表中的所有元素。
我的模型类以及数据结构如下所示:
public class Project
{
public int ID { get; set; }
public string Title { get; set; }
}
List<Project> projects = projectService.GetProjects();
List<int> bookmarkIds = new List<int>
所以,我基本上是在创建一个类似版本控制的系统。我有下面的Form类
public class Form
{
public long Id {get; private set;}
/* among other things */
}
然后,另一个像这样的类:
public class Conflict
{
List<Form> localForms;
List<Form> remoteForms;
/* among other things */
}
然后是维护List of Conflicts的主类。
public class M
我有一个结果列表,其中包含列表。我还有另一个列表,其中只包含列表。我想使用linq查询从数据中进行过滤,其中应该返回第二个列表中包含技能id的所有数据。
var list = this._viewModel.Data.Select(T => T.SkillsList);
var filtered = item.Skills.Contains(list.Where(t=>t.ToString()).ToList();
从第一个列表开始,它包含技能列表中的小数列表;item.Skills包含技能和代码字段的列表。item是另一个包含skillslist的对象。
我正在把一个列表转换成另一个列表。另外,对于第一个列表中的数据,我希望添加位置。为此,我创建了以下代码:
class A
{
...
}
class B
{
...
public int Position { get; set; }
}
List<A> listA = ...;
int pos = 1;
List<B> listB = listA.Where(...).Take(...).Select(
a => new B { ..., Position = pos++ }).ToList();
这样做是可行的,但它是否应该而
我有一个如下所示的xml文件
<questions>
<question>
<text>What color is an orange?</text>
<answer>blue</answer>
<answer>yellow</answer>
<answer>orange</answer>
</question>
<question>
<text>What color is a bana
我有一个包含多个列的列表A,还有另一个由字符串组成的列表B。我试图得到列表A,其中列x在列表b中有值
List A - Users
Id Name Profession Age
1 John Teacher 45
2 Mike Executive 49
3 Patrick Teacher 34
4 Vinny CEO 65
5 Sam Investor 56
List B - ProfessionsList
Teacher
Invester
现在,我希望我的linq查询返回三条记录
1 John
我有两个对象模型,它们共享一些属性,另一个类型的列表用于创建另一个类型的列表。现在,我有这样的东西(而且很有用):
List<ObjectA> TheListOfObjectsA = the result of some query;
List<ObjectB> TheListOfObjectsB = new List<ObjectB>();
foreach (ObjectA TheObjectA in TheListObjectsA)
{
ObjectB TheObjectB = new ObjectB();
TheObjectB.Prop
我需要创建一个基于子查询返回结果的LINQ查询。我不太确定我的措辞是否恰当,但我所知道的最好的提问方式是举一个例子。如何将以下TSQL查询转换为LINQ查询(表与对象同名):
SELECT CuisineId, Name
FROM Cuisine
WHERE CuisineId NOT IN (SELECT CuisineId
FROM RestaurantCuisine
WHERE RestaurantId = @id)
正如您可以猜到的,我正在尝试获取一个“可用”菜肴列表,以供用户添加到