小编Vde*_*dex的帖子

单元测试具有子/子类的类的FluentValidation规则

当我们验证的对象具有也经过验证的子类时,是否可以为fluentvalidation类编写单元测试.

举个例子:我的班级看起来像这样

public class TestModel
{

    public class SubData
    {
        public int SubDataVal { get; set; }
    }

    public int ParentVal { get; set; }
    public SubData Sub { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

我的验证逻辑如下所示:

public class TestModelValidator : AbstractValidator<TestModel>
{
    public TestModelValidator()
    {
        RuleFor(o => o.ParentVal).GreaterThan(0);
        RuleFor(o => o.Sub.SubDataVal).GreaterThan(0);
    }
}
Run Code Online (Sandbox Code Playgroud)

当我写下面的单元测试时

    [Test]
    public void Should_have_error_when_val_is_zero()
    {
        validator = new TestModelValidator();
        validator.ShouldHaveValidationErrorFor(model => model.ParentVal, 0);
    }
Run Code Online (Sandbox Code Playgroud)

我得到一个"System.NullReferenceException:对象引用未设置为对象的实例." 来自FluentValidation.TestHelper.ValidatorTester`2.ValidateError(T instanceToValidate)的异常

(如果我删除RuleFor(o => o.Sub.SubDataVal).GreaterThan(0);行,那么它可以工作!)

同样,如果我尝试用以下单元测试实际的子类:

    [Test]
    public void …
Run Code Online (Sandbox Code Playgroud)

c# unit-testing fluentvalidation

8
推荐指数
2
解决办法
7184
查看次数

如何授予对 azure 注册应用程序的订阅访问权限?

我正在尝试设置章鱼以将资源部署到 azure。

在 azure 活动目录下,我添加了一个新的应用程序注册,并生成了一个密钥并将八达通与正确的应用程序 ID、租户 ID 和密钥连接起来

该组织有多个与环境相对应的 azure 订阅,所以我注意到如果我使用“Visual Studio Professional MSDN”订阅的订阅 ID,它会工作并创建资源,但是如果我尝试使用任何其他组织订阅我收到以下错误的 ID:

Login-AzureRmAccount :提供的帐户 c0b2.......76a6 无权访问订阅 ID“f06.......2aa3”。请尝试使用不同的凭据或不同的订阅 ID 登录。

我查看了应用程序注册的所有设置,并授予它所有可用的“Windows Azure Active Directory”权限,但仍然没有运气。

我如何授予此应用程序注册的权限,以便它可以访问相关订阅?

azure azure-active-directory

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

有没有办法在IIS5和IIS7上共享相同的.NET 1.1 web.config文件

我使用的是Vista,但与我工作在同一项目上的大多数其他开发人员仍在使用XP.我们的一些项目具有用于处理虚URL的通配符脚本映射,因此每次我在这些站点上工作时,我的IIS 7都会将一个system.webServer/handlers部分添加到web.config文件中,当其中一个开发人员更新它时IIS 5系统无法识别它们并导致以下错误:

Parser Error Message: Unrecognized configuration section 'system.webServer'
Run Code Online (Sandbox Code Playgroud)

那么是否有IIS 7设置它不能在web.config文件中存储脚本映射,或者告诉IIS 5忽略该部分?

我用Google搜索了这个,但我似乎只找到了从IIS5/6迁移到7的人的指南.

.net iis windows-xp web-config windows-vista

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