[英]compare string in multiple object list
我是新编程,如果我的问题没有正确提出,请原谅
所以我有一个返回的 API 调用
public class ProjectMinInfo
{
public string ProjectId { get; set; }
public string Name { get; set; }
public string Company { get; set; }
public class ProjectMinInfos
{
[JsonProperty("@odata.context")]
public string OdataContext { get; set; }
public List<ProjectMinInfo> value { get; set; }
}
}
我有另一个 Api 调用返回多个结果
public class ResourcesAvailable
{
public string ResourceId { get; set; }
public string Description { get; set; }
public string ResourceType { get; set; }
public int ResourceSeq { get; set; }
public string Companies { get; set; } //note this string could contain more than 1 value i.e "1","5"
public class ResourcesAvailables
{
[JsonProperty("@odata.context")]
public string OdataContext { get; set; }
public List<ResourcesAvailable> value { get; set; }
}
}
我需要一个 function 来查看所有多个public string Companies{ get; set; }
public string Companies{ get; set; }
public string Companies{ get; set; }
在第二次 API 调用中,然后仅输出包含类似于public string Company { get; set; }
public string Company { get; set; }
在第一个public string Company { get; set; }
调用中。
您需要将字符串解析为列表并比较字符串
假设您将第一个 Api 调用的结果存储在ProjectMinInfo projectMinInfo
中,并将结果或第二个 Api 存储在List<ResourcesAvailable> resourcesAvailableList
中,现在您需要获取 ZA62666ZF63131ADCB499
ResourcesAvailable matchingResource = resourcesAvailableList.Where(x => x.Companies.Split(',').Contains(projectMinInfo.Company)).FirstOrDefault();
*我不确定我是否正确理解了您的问题。
好吧,这就是我所理解的:您有一个拥有公司的ProjectMinInfo
实例。 此外,您有一个ResourcesAvailable
实例的集合,其中每个实例都有一些公司,用逗号和空格“,”分隔,例如Company1, Company2, Company3
。
您想提取包含ProjectMinInfo
实例指定的公司的ResourcesAvailable
实例,对吗?
如果是这样,这是 LINQ 查询:说project
是ProjectMinInfo
类型的实例,资源 - ResourcesAvailable
的列表。
// If you want the first resource that matches your condition
var matchingResource = resources
.FirstOrDefault(q => q.Companies.Split(", ").Contains(project.Company));
// If you want all of the resources that match your condition
var matchingResources = resources
.Where(q => q.Companies.Split(", ").Contains(project.Company))
.ToList();
如果这不是您要查找的内容,请随时添加说明^^
哦,我看到这个问题在一月份被问到了
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.