Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# dotnet core 1.1.1、mvc 1.1.2中未调用模型绑定器提供程序_C#_Asp.net Core_Asp.net Core Mvc_.net Core - Fatal编程技术网

C# dotnet core 1.1.1、mvc 1.1.2中未调用模型绑定器提供程序

C# dotnet core 1.1.1、mvc 1.1.2中未调用模型绑定器提供程序,c#,asp.net-core,asp.net-core-mvc,.net-core,C#,Asp.net Core,Asp.net Core Mvc,.net Core,我使用向导创建了一个全新的.netcore项目,并添加了以下内容 从未调用模型绑定器提供程序 这是虫子吗?我错过了什么?如果我只是在GetBinder中抛出一个异常,它永远不会到达 public void ConfigureServices(IServiceCollection services) { // Add framework services. services.AddMvc( _ => { _.ModelB

我使用向导创建了一个全新的.netcore项目,并添加了以下内容

从未调用模型绑定器提供程序

这是虫子吗?我错过了什么?如果我只是在
GetBinder
中抛出一个异常,它永远不会到达

public void ConfigureServices(IServiceCollection services)
{
    // Add framework services.
    services.AddMvc(
        _ =>
        {
            _.ModelBinderProviders.Add(new PartyModelBinderProvider());
        });
}
提供者

public class PartyModelBinderProvider : IModelBinderProvider
{
    public IModelBinder GetBinder(ModelBinderProviderContext context)
    {
        if (context.Metadata.ModelType == typeof(Party))
            return new PartyModelBinder();
        return null;
    }
}
活页夹

public class PartyModelBinder : IModelBinder
{
    public Task BindModelAsync(ModelBindingContext bindingContext)
    {
        return Task.CompletedTask;
    }
}
我的动作方法很简单

[HttpGet]
public IActionResult Test()
{
    return View(new Party());
}

[HttpPost]
public IActionResult Test(Party party)
{
    return View(party);
}

结果表明,在选择一个绑定之前,
Add
方法无法达到预期的结果,因为模型绑定将按顺序进行评估

在dotnetcore中添加模型绑定器的唯一方法是使用
Insert

services.AddMvc(
    _ =>
    {
        _.ModelBinderProviders.Insert(0, new PartyModelBinderProvider());
    });

您是否尝试了参数未命名为
\uu
AddMvc
方法?