我有一批使用该模型的用户。
public class AdUserModel
{
public string UserName { get; set; }
public AdUserModel Manager { get; set; }
}
当manager不为null时,我需要在Manager
嵌套中进行迭代,并做一些工作。我怎样才能做到这一点?
void Recurse(AdUserModel model)
{
// Do something..
if (model.Manager is not null) Recurse(model.Manager);
}
或者使用扩展方法:
static void Recurse(this AdUserModel model)
{
// Do something..
model.Manager?.Recurse();
}
如果你有一个AdUserModel
的集合,它们可以这样使用:
foreach (var model in userModels) Recurse(model);
// Or with the extension:
foreach (var model in userModels) model.Recurse();