7

这个问题很相似,但我认为不一样

msbuild ASPNETCOMPILER ASPNETRUNTIME startIndex 错误

我有一个尝试使用 Visual Web Developer 2010 Express 发布的 Web 应用程序。

如果我在本地发布或发布到生产服务器,这没有任何区别,并且 UNCHECKPrecompile during publishing一切都会正常工作,它会发布和工作,没有运行时错误。

但是,如果我检查上述内容,则会收到错误消息:

Error   1   startIndex cannot be larger than length of string.  ASPNETCOMPILER  0   0   bms

没有其他错误,也没有其他信息!

任何人都可以帮助我开始追踪这个吗?

4

7 回答 7

3

对我来说,清理和重建、删除 .obj 文件夹等无助于解决错误。

我的解决方案如下

在 VS2013 中,我在解决方案资源管理器中右键单击项目并选择“发布”,然后在发布对话框中选择“设置”。然后我扩展了“文件发布选项”。然后我单击“发布期间预编译”旁边的配置链接。然后我取消选择“允许预编译站点可更新”。然后出版对我有用。如果我取消该选择,我仍然可以在之后发布。希望这可以帮助。

于 2014-01-23T16:05:11.347 回答
1

虽然这个问题是很久以前提出的,但我最近遇到了这个错误。

就我而言,问题是我使用 Windows 功能压缩了存储项目的驱动器以节省空间。

解压存储web项目的文件夹后,错误消失了。

希望这有帮助。

于 2015-10-21T17:13:19.187 回答
0

我突然开始遇到同样的错误。我不知道是什么原因造成的,但我找到了一些解决方法。

退出 Visual Studio(我在 VS2012 上) 删除你的 obj 文件夹 打开 Visual Studio 并重试。

于 2013-05-23T16:29:35.657 回答
0

我也遇到了同样的问题,然后我按照步骤操作。

  • 打开控制台。
  • 转到 .net 框架目录
  • C:\Windows\Microsoft.NET\Framework64\v4.0.30319>
  • 执行以下命令

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_compiler.exe -v / -p C:\Users\muralidharand\Source\Workspaces\Personal\ERPv1\ERPWeb\obj\Debug\AspnetCompileMerge\Source -u - d C:\Users\muralidharand\Source\Workspaces\Personal\ERPv1\ERPWeb\obj\Debug\AspnetCompileMerge\TempBuildDir -errorstack

  • 然后回到 Visual Studio,进行清理、重建和发布。这在 Vs 2013 Professional Edition (sp3) 中对我有用。
于 2014-12-13T08:03:00.710 回答
0

除了 Wayne Brantley 建议删除 obj 文件夹之外,我还使用 Visual Studio运行了“ Clean ”,然后是“ Rebuild ”。这解决了我的问题。

于 2013-08-29T17:22:53.610 回答
0

这是由于我发布到一个包含旧发布版本的文件夹中造成的。即在您正在使用的发布配置文件设置上选择“在发布前删除所有现有文件”选项。

即确保你有一个干净的目标构建/发布目录,这样它就不会干扰编译器等。

更新:还要检查您的工作解决方案空间中是否没有已发布的文件夹,例如,确保您在当前解决方案树的外部发布,远离。

于 2013-11-17T23:29:35.977 回答
0

我有一个非常相似的问题。我可以在 Visual Studio 2012 Pro 中运行发布向导,它可以发布,但是在命令行上使用 msbuild 运行它时,它会给出错误“startIndex 不能大于字符串的长度”

我发现这是因为我在调用 msbuild 时没有指定配置模式。一旦我指定了发布配置,它就起作用了。

这就是我如何让它为我的构建脚本工作

MSBuild "MySolution.sln" /property:Configuration=Release /property:DeployOnBuild="true" /property:PublishProfile="MyPublishProfile"

希望有帮助。

于 2014-02-09T17:58:50.580 回答