小编Eni*_*ixf的帖子

Fluent Validation,对Asp.NET Core中列表中的每一项进行不同的验证

我一直试图找到一种方法来验证列表中的项目,每个项目都有不同的验证规则。我遇到了 Fluent 验证,这是一个很棒的库,但我似乎无法找到一种方法来单独对每个项目进行验证。我从这个类似的线程中得到了一个模糊的想法(使用 fluent 验证验证 2 列表),但我不确定如何按照我想要的方式关注它。

所以我有这个视图模型:

 public class EditPersonalInfoViewModel
{
    public IList<Property> UserPropertyList { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这包含 Active Directory 属性的列表。每个由这个类表示:

   public class Property
{
    public string Name { get; set; }
    public UserProperties Value { get; set; }
    public string input { get; set; }
    public bool Unmodifiable  { get; set; }
    public string Type { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

关键是,每个 AD 属性都有不同的约束,所以我想以某种方式为列表中的每个属性指定不同的规则,如下所示:

   public class ADPropertiesValidator : AbstractValidator<EditPersonalInfoViewModel>
{
    public ADPropertiesValidator()
    {
        RuleFor(p => …
Run Code Online (Sandbox Code Playgroud)

c# asp.net validation asp.net-mvc fluentvalidation

3
推荐指数
1
解决办法
4327
查看次数

给定 n 个叶子生成所有可能的二叉树

因此,正如标题所暗示的那样,任何人都拥有/知道一种算法(如果可能的话,用java)来生成给定叶子数量的所有可能的二叉树,如下面第二个链接的示例所示?

\n
` N                  N                  N\n / \\                / \\                 /\\\nN   N               N  N               N  N\n/\\   /\\             /\\                     /\\\nN  N  N N           N  N                    N N\n                   / \\                        /\\\n                   N  N                       N N \n
Run Code Online (Sandbox Code Playgroud)\n

我\xc2\xb4已经去过这个这个这个这个,但我已经尝试实现每个,他们不\xc2\xb4t做我\xc2\xb4m寻找或没有正确解释的事情。如果我必须首先生成所有可能的字符串,然后将它们解析为树类型(父子关系),第一个将需要大量计算,而第二个不打印所有树。因为,例如,如果我像上面的示例一样通过指定 3 个内部节点来执行,它只会打印一棵树(左边的那棵)。我通过研究加泰罗尼亚数字知道,即使对于少量节点,树的数量也会增长很多,但对于少量节点来说是一个有用的工具。

\n

java algorithm tree binary-tree permutation

2
推荐指数
1
解决办法
2901
查看次数