Linq语句

来源:百度知道 编辑:UC知道 时间:2024/06/24 15:52:08
我现在有两个list集合,比方说一个为List<Person>,其中Person类有Name和City属性,另外还有一个集合List<Pet>,其中Pet类有Name和Ower属性,现在我想用Linq取出3中结果,一种是两个集合的交叉的Pet值,也就是说取出集合B中Ower在集合A中的Name存在的数据集合,这个是已经实现的,第二种是取出集合A中在集合B中不存在匹配值得数据集合,返回的是Person类的集合,第三种是取出集合B中在集合A中不存在匹配值的数据集合,返回的是Pet类的集合,后两种没有实现,主要原因是我在linq中没有找到not equals的关键字,不知道如何表达这一个,实例说明
A:21,23
B:21,22
第一种情况:返回21
第二种情况:返回23
第三种情况:返回22
请教各位大侠!orz!

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Test
{
class Person
{
public string Name { get; set; }
public string Sity { get; set; }
}
class Pet
{
public string Name { get; set; }
public string Ower { get; set; }
}
class Program
{
static void Main(string[] args)
{
List<Person> listPerson = new List<Person>() { new Person { Name = "ren", Sity = "bj" }, new Person { Name = "renren", Sity = "sh" } };
List<Pet> listPet = new List<Pet>() { new Pet { Name = "dog", Ower = "ren" }, new Pet { Name = "mao", Ower = "rr" } };

var titles1 = from list in listPet
where (from person in listPers