ASP.NET Core 使用记录1

简介: ASP.NET 项目启动 提示 ID为XXX的进程未启动原因:暂时不能明确。 解决方案:删除项目的 csproj 文件的WebProjectProperties节点内容。 <WebProjectProperties> <UseIIS>True</UseIIS> <AutoAssignPort>True</AutoAssignPort> ...

ASP.NET 项目启动 提示 ID为XXX的进程未启动

原因:暂时不能明确。

解决方案:

删除项目的 csproj 文件的WebProjectProperties节点内容。

        <WebProjectProperties>
          <UseIIS>True</UseIIS>
          <AutoAssignPort>True</AutoAssignPort>
          <DevelopmentServerPort>0</DevelopmentServerPort>
          <DevelopmentServerVPath>/</DevelopmentServerVPath>
          <IISUrl>http://localhost:55990/</IISUrl>
          <NTLMAuthentication>False</NTLMAuthentication>
          <UseCustomServer>False</UseCustomServer>
          <CustomServerUrl>
          </CustomServerUrl>
          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
        </WebProjectProperties>

ASP.NET CORE 监听地址

在将项目部署到云服务器上时,在云服务器启动项目服务时,默认的 launchsetting.json 里的applicationUrl是监听 http://localhost:5000 这些url,而我们要想通过公网访问我们的接口服务,这样的配置是不行的。
需要改成 http://*:5000 这样的url,才能通过公网IP来访问我们的项目服务。
ASP.NET Core 设置urls
其中设置url的优先级问题:Kestrel > 命令行 > 配置文件 > UseUrls > 环境变量 > 默认值

  1. kestrel 配置

    public static IHostBuilder CreateHostBuilder(string[] args) =>
     Host.CreateDefaultBuilder(args)
         .ConfigureWebHostDefaults(webBuilder =>
         {
         
         
             webBuilder.UseStartup<Startup>();
             // 配置Kestrel服务
             webBuilder.UseKestrel(kestrelServerOptions =>
             {
         
         
                 kestrelServerOptions.ListenLocalhost(7004);
                 kestrelServerOptions.ListenLocalhost(7014, listenOptions => listenOptions.UseHttps());
             });
         });
    
  2. 命令行配置

    dotnet AspNetCoreUrl.dll --urls "http://localhost:7001;https://localhost:7011"
    
  3. 配置文件

在生成程序的根目录下,打开appsettings.json文件,添加url配置项

{
   
   
    "urls":"http://localhost:7002;http://localhost:7012"
}
  1. useurls 配置

    public static IHostBuilder CreateHostBuilder(string[] args) =>
     Host.CreateDefaultBuilder(args)
         .ConfigureWebHostDefaults(webBuilder =>
         {
         
         
             webBuilder.UseStartup<Startup>();
             // 使用UseUrls设置监听的端口和协议
             webBuilder.UseUrls("http://localhost:7003", "https://localhost:7013");
         });
    
  2. 环境变量配置

在不修改AspNetCoreUrl任何源代码的情况下(即创建项目时的程序默认状态)生成程序,定位到生成的根目录下,打开命令行终端
image.png

# 环境变量仅在当前命令行窗口生效
$Env:ASPNETCORE_URLS = "http://localhost:7000;https://localhost:7010"
# 或者使用DOTNET_URLS环境变量同样可生效
$Env:DOTNET_URLS = "http://localhost:8000;https://localhost:8010"
# 运行AspNetCoreUrl程序
dotnet AspNetCoreUrl.dll

如果使用Windows命令行(即cmd命令行),使用下面的方式设置

# 环境变量仅在当前命令行窗口生效
set ASPNETCORE_URLS=http://localhost:7000;https://localhost:7010
# 将ASPNETCORE_URLS变量保存到用户环境变量中
setx ASPNETCORE_URLS "http://localhost:7000;https://localhost:7010"
# 加/m参数,将ASPNETCORE_URLS变量保存到系统环境变量中
setx ASPNETCORE_URLS "http://localhost:7000;https://localhost:7010" /m
# 运行AspNetCoreUrl程序
dotnet AspNetCoreUrl.dll

注意:使用setx设置环境变量后,需要打开新的Windows命令行窗口才会使用环境变量生效
在Linux系统中使用以下命令设置环境变量

# 环境变量仅在当前终端生效,关闭终端后需要重新设置 
export ASPNETCORE_URLS="http://localhost:7000;https://localhost:7010"
  1. 默认值

默认值就是默认监听的 5000 和 5001端口号.

目录
相关文章
|
1月前
|
开发框架 .NET 开发者
简化 ASP.NET Core 依赖注入(DI)注册-Scrutor
Scrutor 是一个简化 ASP.NET Core 应用程序中依赖注入(DI)注册过程的开源库,支持自动扫描和注册服务。通过简单的配置,开发者可以轻松地从指定程序集中筛选、注册服务,并设置其生命周期,同时支持服务装饰等高级功能。适用于大型项目,提高代码的可维护性和简洁性。仓库地址:&lt;https://github.com/khellang/Scrutor&gt;
51 5
|
2月前
|
开发框架 .NET C#
在 ASP.NET Core 中创建 gRPC 客户端和服务器
本文介绍了如何使用 gRPC 框架搭建一个简单的“Hello World”示例。首先创建了一个名为 GrpcDemo 的解决方案,其中包含一个 gRPC 服务端项目 GrpcServer 和一个客户端项目 GrpcClient。服务端通过定义 `greeter.proto` 文件中的服务和消息类型,实现了一个简单的问候服务 `GreeterService`。客户端则通过 gRPC 客户端库连接到服务端并调用其 `SayHello` 方法,展示了 gRPC 在 C# 中的基本使用方法。
56 5
在 ASP.NET Core 中创建 gRPC 客户端和服务器
|
1月前
|
开发框架 缓存 .NET
GraphQL 与 ASP.NET Core 集成:从入门到精通
本文详细介绍了如何在ASP.NET Core中集成GraphQL,包括安装必要的NuGet包、创建GraphQL Schema、配置GraphQL服务等步骤。同时,文章还探讨了常见问题及其解决方法,如处理复杂查询、错误处理、性能优化和实现认证授权等,旨在帮助开发者构建灵活且高效的API。
37 3
|
25天前
|
开发框架 算法 中间件
ASP.NET Core 中的速率限制中间件
在ASP.NET Core中,速率限制中间件用于控制客户端请求速率,防止服务器过载并提高安全性。通过`AddRateLimiter`注册服务,并配置不同策略如固定窗口、滑动窗口、令牌桶和并发限制。这些策略可在全局、控制器或动作级别应用,支持自定义响应处理。使用中间件`UseRateLimiter`启用限流功能,并可通过属性禁用特定控制器或动作的限流。这有助于有效保护API免受滥用和过载。 欢迎关注我的公众号:Net分享 (239字符)
49 1
|
开发框架 .NET 中间件
ASP.NET Core 面试题(二)
ASP.NET Core 面试题(二)
338 0
|
开发框架 JSON .NET
ASP.NET Core 面试题(一)
ASP.NET Core 面试题(一)
992 0
|
4月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
56 7
|
4月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
102 0
|
5月前
|
开发框架 前端开发 .NET
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
75 0
|
5月前
|
开发框架 前端开发 安全
ASP.NET MVC 如何使用 Form Authentication?
ASP.NET MVC 如何使用 Form Authentication?

热门文章

最新文章