gpt4 book ai didi

c# - LINQ to SQL 查找未在另一个列表中列出的对象

转载 作者:太空宇宙 更新时间:2023-11-03 18:18:00 25 4
gpt4 key购买 nike

我正在为一名 vert 编写数据输入应用程序,我遵循了 MVC Nerd Diner 应用程序中使用的许多原则。我的应用程序已完成 90%,但正在尝试解决一个烦人的问题:

目前,当用户将宠物添加到发票中时,我有一个下拉列表,其中列出了所有客户当前的宠物 - 无论它们是否已经在发票上。我希望它只包含客户未在发票上的宠物,这样他们就不能多次添加同一只宠物。

按照 Nerd Dinner 教程应用程序,我有一个包含以下查询的 CustomerRepository.cs 文件:

// Finds list of a customer's pets
public IQueryable<Pet> FindCustomerPets(int id)
{
return from pet in db.Pets
where pet.CustomerID == id
select pet;
}

如果宠物已经在访问中,则会有它的访问详细记录。所以...我想写的是一个查询,如果没有宠物的访问详细信息,它只会带走宠物。这是我正在处理的内容:

public IQueryable<Pet> FindPetsNotOnVisit(int id)
{

Visit visit = GetVisit(id);
var pets = FindCustomerPets(visit.CustomerId);

var visitDetails = from visitDetail in db.VisitDetails
where visitDetail.VisitID == id
select visitDetail;

//What do I need to do to remove where pet.PetID == visitDetail.PetID?
}

最佳答案

pets.Where(p=>!visitDeails.Any(v=>v.PetID==p.PetID));

记事本代码。

关于c# - LINQ to SQL 查找未在另一个列表中列出的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3411343/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com