zoukankan      html  css  js  c++  java
  • 重新整理.net core 计1400篇[四] (.net core 修改sdk )

    前言

    可能有些人还不知道什么是sdk,software development kit,中文是软件开发包的意思。

    然后什么是软件开发包?

    软件开发工具包是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言SDK即开发 Windows 平台下的应用程序所使用的SDK。
    它可以简单的为某个程序设计语言提供应用程序接口API的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。
    一般的工具包括用于调试和其他用途的实用工具。SDK还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。
    

    如何修改sdk

    来看下我们的解决方案的配置是啥?

    <Project Sdk="Microsoft.NET.Sdk">
      <PropertyGroup>
        <OutputType>Exe</OutputType>
        <TargetFramework>netcoreapp2.2</TargetFramework>
    	<RuntimeIdentifier>win10-x64</RuntimeIdentifier>
      </PropertyGroup>
      <ItemGroup>
         <FrameworkReference Include="Microsoft.AspNetCore.App" />
      </ItemGroup>
      <ItemGroup>
        <PackageReference Include="Microsoft.AspNetCore" Version="2.2.0" />
      </ItemGroup>
    </Project>
    

    上面的项目中sdk显示了,现在我们使用是sdk是:Microsoft.NET.Sdk

    这时候修改成:

    <Project Sdk="Microsoft.NET.Sdk.Web">
      <PropertyGroup>
        <TargetFramework>netcoreapp2.2</TargetFramework>
    	<RuntimeIdentifier>win10-x64</RuntimeIdentifier>
      </PropertyGroup>
      <ItemGroup>
         <FrameworkReference Include="Microsoft.AspNetCore.App" />
      </ItemGroup>
      <ItemGroup>
        <PackageReference Include="Microsoft.AspNetCore" Version="2.2.0" />
      </ItemGroup>
    </Project>
    

    sdk换成了Microsoft.NET.Sdk.Web,然后去除了exe生成文件,这是因为我们部署的时候呢,一般是文件的发布形式。

    改完之后,我们来看下文件目录发生了什么变化。

    多了一个launchSettings.json 文件:

    看下里面的配置是啥?

    {
      "iisSettings": {
        "windowsAuthentication": false,
        "anonymousAuthentication": true,
        "iisExpress": {
          "applicationUrl": "http://localhost:55401/",
          "sslPort": 0
        }
      },
      "profiles": {
        "IIS Express": {
          "commandName": "IISExpress",
          "launchBrowser": true,
          "environmentVariables": {
            "ASPNETCORE_ENVIRONMENT": "Development"
          }
        },
        "helloword": {
          "commandName": "Project",
          "launchBrowser": true,
          "environmentVariables": {
            "ASPNETCORE_ENVIRONMENT": "Development"
          },
          "applicationUrl": "http://localhost:55402/"
        }
      }
    }
    

    而且你会发现另外一件事:

    多了一个iisexpress,我们把配置中的iisSettings的http://localhost:55401/改成http://localhost:3000/

    那么看下有什么结果,那么我们在通过iisexpress 启动。

    同样我们可以使用命令行进行启动,比如说dotnet run。

    这时候我们又两个配置一个是 iisexpress 还有一个是helloword,看下到底会启动哪一个。

    会启动profiles 中第一个commandName 为 Project的那一个。

    那么如何指定呢?

    dotnet run --launch-profile helloword
    

    同样你也可以

    dotnet run --no-launch-profile
    

    将会启动默认的服务器,5000和50001,这个是kestrel 默认的,同时也是生成服务器。

    既然是默认的,那么就可以修改,该一下。

     WebHost.CreateDefaultBuilder().UseKestrel().UseUrls("http://0.0.0.0:10052;http://0.0.0.0:10051;").Configure(app => app.Run(
                     context => context.Response.WriteAsync("hello word!")
                    )).Build().Run();
    

    然后运行:

  • 相关阅读:
    flex学习网站地址
    ASP.NET 开发人员应该知道的8个网站
    登入页面添加图片有重复页面出现怎么办
    一行代码是有两个??
    c# 枚举基础有[flags]和没有的的区别
    c#中[Flags] 枚举类型定义问题_百度知道
    写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。
    Margin和Padding之间的区别
    对于top.ascx里面可以不可以放置css的文件进行一个讲解
    设计模式之--适配器模式(Adapter)
  • 原文地址:https://www.cnblogs.com/aoximin/p/12887725.html
Copyright © 2011-2022 走看看