代码之家  ›  专栏  ›  技术社区  ›  Brian Rak

Visual Studio 2017突然不会向Azure上传新的JavaScript文件

  •  1
  • Brian Rak  · 技术社区  · 7 年前

    我有一个ASP.NET MVC 5项目,里面有一堆类型脚本文件。我使用Gulp来缩小和捆绑它们,但我也将生成的JavaScript文件上传到一些环境中,以便于调试。

    我使用Project>publish,使用App Service publish目标从Visual Studio 2017发布到Azure。

    出于某种原因,从 新增 未上载TypeScript文件(从旧的TypeScript文件生成的JavaScript将继续正常上载)。

    这些JavaScript文件实际上并没有包含在我的项目中(它们只是位于生成它们的TypeScript父级旁边的文件夹中)。

    我在项目文件中没有看到任何地方实际指定应该上传它们。但是,如果我使用云资源管理器从服务器中删除一个旧文件并重新发布, 旧的JavaScript文件将再次发布,而我的新文件将被忽略。

    到底是什么原因造成的?

    1 回复  |  直到 7 年前
        1
  •  3
  •   Lee Liu    7 年前

    根据你的描述,你想允许你在指定文件夹中的JS文件上传到Azure web app,为此,我们需要设置 .csproj 文件。

    例如,当我们发布项目时,我们可以按以下步骤将“资源”文件夹中的所有文件上载到azure web应用:

    <Content Include="Resource\*">
        <CopyToPublishDirectory>always</CopyToPublishDirectory>
    </Content>
    

    enter image description here

        2
  •  0
  •   AaronK    6 年前

    我刚刚遇到这个问题,我通过以下方式解决了它:

    1. 关闭的Visual Studio项目
    2. 已删除此位置中除最新文件夹以外的所有文件夹: C:\Program Files (x86)\Microsoft SDKs\TypeScript
    3. 重新打开的Visual Studio项目
    4. 在包含无法发布的TypeScript文件的目录中,我添加了一个名为 Foo.ts 带着虚幻的内容。 (这促使我 将我的Typescript插件更新为当前版本 ,我接受了)
    5. 我证实了 食品 项目生成时编译为javascript。

    在那一点上, 发布我的项目将部署所有生成的JavaScript文件 ,所以我删除了dummy Foo.ts,因为它不再需要了。

    我希望这有助于解决这个问题。