gpt4 book ai didi

c# - 如何使用 List 压缩一堆 IF 语句——这可能吗?

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

所以我有两个“文档”,它们都具有分配的属性。一个文档是已填写文档的一个实例。我需要检查属性中是否有“值”(因为它们主要是可为空的整数?),如果有,则将当前属性的值分配给其他文档的属性。

例子

if (documentA.FirstProperty.HasValue)
{
documentB.FirstProperty = documentA.FirstProperty
}

但是有没有办法让这个更清楚呢?我想也许我可以创建一个文档类型列表并使用 foreach 循环并检查当前属性是否有值,如果有则将其分配给新文档。

已经获取了名为oldDocument的文档实例

例子:

List<oldDocument> listOfProperties = new List<oldDocument>();

foreach (var property in listOfProperties)
{
if (property.HasValue)
{
documentB.property = documentA.property;
}
}

foreach 循环中的变量“property”在哪里表示属性的名称?

最佳答案

您可以为此使用 linq。

var nullProps = doc1.SelectMany(d => d.Props).Where(prop => prop == null); 
//Assign
foreach(var prop in nullProps)
doc1.Prop[prop.Name] = doc2.Prop[prop.Name];

关于c# - 如何使用 List 压缩一堆 IF 语句——这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3427201/

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