zoukankan      html  css  js  c++  java
  • 控制台启动.Net Core 3.1 Web应用程序 项目

    原创博客:https://www.cnblogs.com/wangxiaorang/

    环境:.Net Core 3.1 

    工具:VS Studio 2019(.net core 3.1以上目前只能用2019)

    1、新建一个asp.net core web 应用程序

    创建完成目录结构

     2、正常运行方式,直接在浏览器中打开

     

    这样肯定是没啥问题,但是在开发过程中那个,有的时候运行起来会比较慢.....

    3、在控制台启动项目

    当然,还是少不了编译,先生成

     然后找到生成的文件夹

     

     然后 cmd,回车(快速进入指定目录)

     

     然后控制台输入,dotnet 解决方案名称.dll --urls="http://*:端口号"  如: dotnet netcore31demo.dll --urls="http://*:8080"  ,回车

     这样,项目就运行起来了,浏览器访问,localhost:8080

    但是好像有个问题,样式不见了,F12看一下

     果然,样式加载失败,因为我们的样式都是放在wwwroot文件夹下的,生成的时候没有加进来(因为我们是编译的,如果是项目发布,就会把样式也加进来的),

    把wwwroot文件夹复制过来就行了

    但是发现还是不行,看到请求失败的地址看到少了一层wwwroot(有人说可以直接把wwwroot文件夹里面的东西复制到和wwwroot同一级不就解决了,确实可以解决,但是,不建议这么干

     那我们应该怎么干呢,找到Startup.cs文件,在app.UseStaticFiles()里加上  new StaticFileOptions(){FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot"))} 最后记得重新生成一下(重新生成要先停掉项目,在控制台ctrl+c

    然后再次启动就ok了

     到此,就实现了在控制台启动.net core web应用程序

    最后,说一下为什么是改代码而不是把wwwroot里面的东西直接放在根目录下

    1、直接放在根目录下,会让根目录的文件夹越来越多,不便于维护

    2、为了之后的发布发布之后的目录如下:

     跟我们直接生成相比,也就是多了web.conifg和wwwroot文件夹,所以,改完代码,我们也可以发布之后,在发布文件夹直接启动项目

    注意:控制台启动项目之后,是不可以生成和发布的(文件占用了呗)

    其实我以前做asp.net webform项目的时候,喜欢用iis搭站点直接访问本地域名的,当然.net core项目也可以这样干,但是每次都得重新发布,没有这样搞的快

    多学一点知识,少写一行代码,每天进步一点点,再会

  • 相关阅读:
    纯js实现10分钟倒计时
    js中的constructor
    双指放大缩小问题(不需要第三方插件)
    js异步加载的3种方式(转载)
    5种处理js跨域问题方法汇总(转载)
    oncopy="document.selection.empty()"跟oncopy="return false"什么区别?
    十进制 转换为 二进制
    99%的人都理解错了HTTP中GET与POST的区别(转载
    简单封装:检测邮箱是否合法
    Xshell记录日志的方法
  • 原文地址:https://www.cnblogs.com/wangxiaorang/p/14459423.html
Copyright © 2011-2022 走看看