小编Gui*_*lle的帖子

如何从Microsoft.NetCore.App 2.0更新到2.1.4

我在Visual Studio 2017版本15.7.2中创建了ASP.NET Core Web API项目。

当我创建它时,它是Microsoft.NetCore.App 2.0

现在我想更新到,Microsoft.NetCore.App 2.1.4但我不能,因为Visual Studio告诉我:

SDK隐式引用。要更新程序包,请更新程序包所属的SDK

我下载了.NET Core的最新版本并安装了它,但是遇到了同样的问题。

有任何想法吗?

.net-core asp.net-core

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

禁用对 asp.net 核心中的操作方法的模型验证

我想对控制器中的特定操作方法禁用模型验证。我有这个场景:

public class SomeDto
{
    public string Name { get; set; }
}

public class SomeDtoValidator : AbstractValidator<SomeDto>, ISomeDtoValidator
{
    public SomeDtoValidator ()
    {
        RuleFor(someDto=> someDto.Name).NotNull().WithMessage("Name property can't be null.");
    }
}
Run Code Online (Sandbox Code Playgroud)

我有 ISomeDtoValidator 因为我以自己的方式注册了所有验证器:

public class Startup
{
    // .... constructor ....

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddOptions();
        services.AddMvc(setup => {
        //...others setups...
        }).AddFluentValidation();

        services.RegisterTypes(Configuration)
                .RegisterFluentValidation()
                .RegisterMappingsWithAutomapper()
                .RegisterMvcConfigurations();
    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env, IConfiguration configuration)
    {
        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)

我在 Controller 中有这个 Action 方法:

[DisableFormValueModelBinding]
public …
Run Code Online (Sandbox Code Playgroud)

c# fluentvalidation asp.net-core

5
推荐指数
2
解决办法
2757
查看次数

使用xUnit和Moq验证是否根据条件执行了方法

使用xUnit和Moq检查是否根据另一个方法的返回值执行一个方法。例:

public class A 
{
    public bool M1() { // return true or false ... }
    public void M2() { // Do something ..... }
}

public class B 
{
    private A objectA;

    public B(A a)
    {
        objectA = a;
    }

    public void Mb ()
    {
        for(int i = 0; i <= 5; i++)
        {
            if (objectA.M1())
            {
                return;
            }

            objectA.M2();
       }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想验证这样的事情:

[Fact]
public void Test()
{
    // Arrange
    Mock<A> mockA = new Mock<A>();
    mockA.Setup(x => x.M1()).Return(true); …
Run Code Online (Sandbox Code Playgroud)

c# moq xunit.net .net-core

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

创建从另一个控制器到控制器的 url 链接

我在 ASP.NET Core 2.0 中开发了一个 WebApi RESTful。从控制器中的动作方法 AI 想要为位于不同控制器 B 中的动作方法创建 URL 地址:

[Route("api/applications/{idbcon}/bcontrollers")]
public class BController : Controller{
    [HttpGet({idbcon}), Name = "ActionB"]
    public IActionResult ActionB(int idbcon, [FromHeader(Name = "Accept")] string mediatype){
        return OK();
    }
}
Run Code Online (Sandbox Code Playgroud)
[Route("api/applications/{idapp}/bcontrollers/{idbcon}/acontrollers")]
public class AController: Controller{
    [HttpGet(), Name = "GetURLBController"]
    public IActionResult GetURLBController()
    {
        var url = /* Here I would like to get the link to "ActionB" that belong to a Controller "BController" */;
        return Ok(url);
    }
}
Run Code Online (Sandbox Code Playgroud)

有什么建议吗???

c# asp.net-core

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

标签 统计

asp.net-core ×3

c# ×3

.net-core ×2

fluentvalidation ×1

moq ×1

xunit.net ×1