Asp.net 发布网站使用ASP mvc和angular 2

Asp.net 发布网站使用ASP mvc和angular 2,asp.net,asp.net-mvc,angular,typescript,publish,Asp.net,Asp.net Mvc,Angular,Typescript,Publish,我用angular 2开发前端,用Asp MVC(不是Asp核心)开发后端 在普通asp mvc应用程序中,使用以下步骤发布应用程序: 右键单击项目 选择“在菜单上发布” 选择配置文件名称 连接 以及其他步骤 当我使用这些步骤并将我的网站上传到主机网站上时,只需显示在中使用的默认加载消息 "<my-app>Loading...</my-app>" “正在加载…” 这是默认步骤使用的我的已发布文件夹: 请帮帮我!并告诉我发布web应用程序的步骤 坦克嗯,不久前我就遇到

我用angular 2开发前端,用Asp MVC(不是Asp核心)开发后端

在普通asp mvc应用程序中,使用以下步骤发布应用程序:

  • 右键单击项目
  • 选择“在菜单上发布”
  • 选择配置文件名称
  • 连接
  • 以及其他步骤

    当我使用这些步骤并将我的网站上传到主机网站上时,只需显示在中使用的默认加载消息

    "<my-app>Loading...</my-app>"
    
    “正在加载…”
    
    这是默认步骤使用的我的已发布文件夹:

    请帮帮我!并告诉我发布web应用程序的步骤


    坦克

    嗯,不久前我就遇到了这个问题,不幸的是,我没有找到很多关于它的信息,但可以分享一些经验

  • 在解决方案内部为构建工件创建文件夹(在我的例子中为
    wwwroot
  • 配置angular cli或用于构建项目的任何工具,以在那里存储构建工件(在我的例子中,在.angular-cli.json文件集
    “outDir”:“项目路径”或“空”,如果它位于\u相同的\u文件夹/wwwroot中”
  • 构建角度应用程序(在我的例子中是
    ng build--prod--output hashing=none--environment=qa
  • 问题从这里开始:在.NETCore中,您可以将project配置为从wwwroot文件夹加载index.html文件,一切都很好,但在这种情况下我无法做到(有什么特别的想法吗)

    所以

  • 修改mvc应用程序的默认路径,使其仅加载一个视图(angular本身将在之后处理)

    routes.MapRoute( 名称:“默认”, url:“{*url}”, 默认值:新建{controller=“Home”,action=“Index”,id=UrlParameter.Optional} );

  • 修改布局页面-将所有index.html内容复制到_layout.html(确保脚本标记引用wwwroot文件夹中的正确文件)

  • 照常出版

  • 解决方案示例


    我希望这会有帮助

    您是否正在使用Azure作为主机?否,我正在使用共享web托管服务@JoséQuintozamoraplese您是否可以共享更多信息,关于控制台日志错误、应用程序代码等,是否应该使用“ng build”来生成已发布的文件@JoséQuintoZamorais是angular 1吗?我如何在我的项目中运行“ng build”。。。我在youtube上看到,使用可视化代码中的终端来运行“ng build”,如果我没有弄错你的问题,你可以使用任何终端。我使用的是标准windows“cmd”。顺便问一下,在没有终端的情况下,如何在Angular上开发?使用ng build时出现此错误,“@Angular/compiler cli”软件包未正确安装。