【问题标题】:ASP.NET Publish Error (The specified path, file name, or both are too long)ASP.NET 发布错误(指定的路径、文件名或两者都太长)
【发布时间】:2018-02-26 14:15:17
【问题描述】:

我在使用 Visual Studio 发布项目时遇到如下错误:

将文件 Areas\AdminPanel\Content\assets\global\plugins\bootstrap-editable\inputs-ext\wysihtml5\bootstrap-wysihtml5-0.0.2\bootstrap-wysihtml5-0.0.2.css 复制到 obj\ Release\Package\PackageTmp\Areas\AdminPanel\Content\assets\global\plugins\bootstrap-editable\inputs-ext\wysihtml5\bootstrap-wysihtml5-0.0.2\bootstrap-wysihtml5-0.0.2.css 失败。指定的路径、文件名或两者都太长。完全限定的文件名必须少于 260 个字符,目录名必须少于 248 个字符。

有没有一种简单的方法可以解决这个问题,或者我应该缩短路径吗?

顺便说一句,我正在使用 ASP.NET Web 窗体。

【问题讨论】:

    标签: c# asp.net webforms publish


    【解决方案1】:

    这是 Windows 的限制。你可以这样禁用它:

    1. 执行“regedit.exe”
    2. 导航到 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem"

    3. 找到一个名为LongPathsEnabled 的值并双击它。如果您没有看到列出的值,则需要通过右键单击 FileSystem 键,选择新建 > DWORD(32 位)值,然后将新值命名为 LongPathsEnabled

    4. 在“数值数据”框中将值从 0 更改为 1,然后单击确定。

    之后,您可能需要重新启动 Visual Studio。

    【讨论】:

    • 这对我没有帮助。
    【解决方案2】:

    Windows 有一个可以配置的限制。见NicoRiff's answer

    也就是说,下面的字符串“只有”173个字符长:

    obj\Release\Package\PackageTmp\Areas\AdminPanel\Content\assets\global\plugins\bootstrap-editable\inputs-ext\wysihtml5\bootstrap-wysihtml5-0.0.2\bootstrap-wysihtml5-0.0.2.css
    

    我建议您在光盘的根目录中创建一个文件夹,例如 D:/Dev 存储所有项目的位置。

    更改注册表也是一种选择,但需要为每个开发人员进行配置,这是次优的。一般来说,您应该选择较短的路径。 Checkout and Build 应该是座右铭。

    当您发布软件时,您还应该minify/bundle 您的客户端脚本。这样,您发布的输出中只有一条短路径 bundle.css

    【讨论】:

      猜你喜欢
      • 2019-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多