小编Mar*_*nti的帖子

WebApi 在调试时给出 404;发表时有效

我有一个用 .NET Core 2.2.6 编写的控制台应用程序,它使用 Kestrel 来托管一个简单的 WebApi。

public class SettingsController : Controller
{
    // 
    // GET: /settings/

    public string Index()
    {
        return $"Hello world! controller";
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我发布代码并运行可执行文件,我可以访问http://127.0.0.1:310/settings并看到预期的“Hello world!控制器”。但是,如果我从 Visual Studio 2019 内部调试(甚至在发布模式下打开),相同的 URL 会引发 404 异常。

发布个人资料

其他一些可能有助于查明问题的代码:

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
        .ConfigureKestrel((context, options) =>
        {
            options.ListenAnyIP(310, listenOptions =>
            {
                listenOptions.Protocols = HttpProtocols.Http1;
            });
        })
        .UseStartup<Startup>();

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
    }

    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    { …
Run Code Online (Sandbox Code Playgroud)

c# .net-core kestrel-http-server asp.net-core asp.net-core-webapi

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

DropDownList项目在每次回发后重复其值

绑定后,下拉列表显示以下值:

  • 第一优先低
  • 第二优先级中
  • 第三优先高

每次回发后,下拉列表均显示以下值:

  • 第一优先低
  • 第二优先级中
  • 第三优先高
  • 第一优先低
  • 第二优先级中
  • 第三优先高

这是代码:

protected void Page_Load(object sender, EventArgs e)
{
   DropDownList1.DataSource = db.ComplaintTypes.ToList();
   DropDownList1.DataTextField = "ct_Name";
   DropDownList1.DataBind();

   cboCpriority.DataSource = db.ComplaintPriorities.ToList();
   cboCpriority.DataTextField = "cp_Desc";
   cboCpriority.DataBind();

   ...
}      
Run Code Online (Sandbox Code Playgroud)

c# asp.net webforms

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