问题标签 [aspnet-compiler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1937 浏览

asp.net - 在 Web 部署项目期间,ASP.NET 编译器失败并出现 XmlSerializers 错误

我们在构建过程中使用 Visual Studio 2010 Web 部署项目来编译 Web 应用程序网站。Visual Studio 2010 未安装在我们的构建代理上。在构建过程中,我们收到与自动生成的 Foo.XmlSerializers.dll 相关的错误(见下文),该错误是使用比当前加载的运行时更新的运行时构建的,并且无法由 aspnet_compiler.exe 加载。

我们在项目文件中以 .NET Framework v3.5 为目标。

这是错误(重新格式化为长行):

0 投票
1 回答
2124 浏览

msbuild - 当我调用 SourceAnalyzer - Fortify 时,我可以将 aspnet_compile 定位到 framework64 吗?

我正在创建一个 MSBuild 来运行 Fortify Scan。命令是:

1) sourceanalyzer -b MYBUILDID devenv SOLUTION.sln /REBUILD 调试

2) sourceanalyzer -b MYBUILDID -scan -f SOLUTION.fpr -format frp

构建日志

1) 1.1)Rebuild Start .....解决方案已经rebuild成功。好的

1.2) 之后,它运行 aspnet_compiler 运行: ASPCOMPILE : "-v" "/FortifyBuildId" "-p" "MySite" "-d" "-f" "-c" "-fixednames" "\%USER%\ AppData\Local\Fortify\VS2010-5.9\output...." Fortify 源码分析完成

2) [错误]:构建 ID“MYBUILDID”不存在

我的构建框是服务器 2008 x64,因为我安装了 sharepoint。我注意到 sourceanalyzer 调用 ASCOMPILE 指向 c:\windows\Microsoft.NET\Framework 而不是c:\windows\Microsoft.NET\Framework64。我已经测试了它在两个框架中运行。使用 aspnet_compile 64 可以正常工作(“c:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_compiler”“-v”​​“/FortifyBuildID”“-p”“MySite”“-d”“-f”“-c " "-fixednames" "%USER%\AppData\Local\Fortify\VS2010-5.9\output.."

你知道我该如何解决吗?

谢谢

0 投票
1 回答
1675 浏览

asp.net - aspnet_compiler.exe 在全局别名中找到多种类型,但我不能!

今天继承一个新项目,试图让数百个警告消失,并为此感到难过。ASP.NET MVC 2,framework 4.0 项目在 VS2010 中编译得很好,但是当构建过程移交给 aspnet_compiler.exe 时,我得到以下内容(从输出窗口剪切和粘贴):

在对象浏览器中进行搜索和对项目中的引用进行繁琐的逐个程序集审查都不会出现任何多重定义。据我所知,以前的团队没有尝试在以前的 ASP.NET 版本中构建任何扩展(我了解到此错误的一个原因);我认为这从一开始就针对 4.0。

这只是一个警告,我想我可以忽略它(你甚至不能使用 aspnet_compiler.exe 进行 /nowarn,所以我必须查看它们)——但这让我错了。关于如何追捕这个的任何建议?项目路径中的“\..\”是否应该让我担心?我正在运行 64 位 Windows;它不是同时查看 x86 和 64 吗?

值得注意的是,在解决方案中使用VS2010中的对象浏览器只能找到aspnet_compiler.exe找到的程序集中的类型;搜索该类型只会给出一个结果。aspnet_compiler.exe 是在寻找 VS2010 没有的地方吗?

0 投票
1 回答
343 浏览

asp.net - 如何使用 Cruise control.net 编译 aspx 页面

我为 ASP.Net 项目设置了 Cruise Control.Net 1.6.7981.1。它目前正在使用 MSBuild 正确构建。MSBuild 配置文件设置如下

我相信,因为我将配置设置为发布,所以 aspx 页面正在作为构建的一部分进行编译。但是,如果我asp:ScriptManager从需要它运行构建的页面中删除标签仍然成功,即使在页面加载时它会导致以下错误。

ID 为“MyControl”的控件需要页面上的 ScriptManager。ScriptManager 必须出现在任何需要它的控件之前。

即使我手动使用

该页面仍然构建没有任何错误。

如果构建中出现任何错误,我真的希望巡航控制使构建失败。有谁知道如何实现这一目标?

0 投票
1 回答
133 浏览

c# - 在 ASP.Net 之外使用 ASP.Net 模板?

作为一个简短的介绍,我花了最近几天编写自己的模板解析器/编译器。这是一个有趣的项目(我计划继续),但它引发了人们对 ASP.Net(ASPX、MVC 2/3 或其他)如何处理模板以及它是否足够模块化以在不同项目中使用的好奇心。关于这个话题似乎也没有太多讨论,所以为什么不问呢?

ASP.Net 有很多不错的特性:

  • 这是一个经过验证的系统,在生产中运行良好
  • 模板编译为 MSIL
  • 它识别文件更改并重新编译
  • 强大的调试支持
  • 可扩展模板

所以这里有一个问题:是否可以采用模板解析/编译/调试系统并将其重用于完全不同的目的?它是模块化的,还是 ass-all-that-asp.net-is 而你要么得到它,要么没有?

0 投票
1 回答
343 浏览

msbuild - aspnet 部署工具的最佳组合

我知道围绕这个问题问了多少问题,但我仍然无法弄清楚我的问题的答案。

我需要部署一个 ASP.NET 4.0 站点,我想做这样的事情:

  1. 获取整个解决方案的最新版本 - webapp 使用的网站和几个类项目(我已经在使用 CCNet 进行此操作 - 没问题)
  2. 在调试配置中构建并部署到测试站点
  3. 在发布配置中构建并部署到临时站点
  4. 如果暂存站点上一切正常,我将运行一个脚本,将发布构建暂存站点部署到同一服务器上不同客户使用的 7-8 个类似站点。将来这将在另一台服务器上。

有 MSDeploy(webdeploy 2.0)、aspnet_compiler、MSBuild、Powershell(我选择的武器..)等等……我不是 100% 确定在哪里使用什么?

我很想模仿 Vs2010 GUI 辅助部署中的“运行站点所需的唯一部署文件”,并且我希望有可能不接触我们部署到的网站中的一些现有文件夹。

我觉得我应该经常使用 MSDeploy ......但我发现它很难 GET。我正在阅读 IIS.NET,并且听过 Scott Hanselman/Jon Arild Tørresdal 播客。我不是 100% 确定从哪里开始……而且我不是 MSBuild 专家,所以 Powershell 对我来说看起来不错。但我觉得这样我错过了正确的工具......

你会在哪一步使用什么工具?

0 投票
1 回答
670 浏览

asp.net-mvc-3 - aspnet_compiler 作为构建后事件在空的 MVC3 应用程序上遇到 IIS 错误

我使用以下命令将 aspnet_compiler 作为构建后事件运行:

我在编译时收到此错误:

在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的部分是错误的。此错误可能是由未在 IIS 中配置为应用程序的虚拟目录引起的。

我已经阅读了其他几个关于此的 StackOverflows,并尝试了以下内容:

  1. 寻找杂散的 web.config 文件——没有,除了 MVC 应用程序中的两个标准(在主 MVC 目录和 Views 目录中)。
  2. 在 IIS 中添加了应用程序。这并没有什么不同。
  3. 尝试使用 IIS Express 而不是开发服务器运行 - 没有区别。

关于可能导致这种情况的任何想法?

0 投票
2 回答
2333 浏览

tfs - 如何强制 TFS 2010 在 64 位构建机器上使用 32 位 ASPNET 编译器构建网站

我们有一个非常大的产品,它在我们的 32 位构建控制器上编译得很好,而且大部分在我们的 64 位构建控制器上编译,但有一个例外。我们有一个预编译的 Web 表单前端。当它在 64 位机器上构建时,它会在 *C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_compiler.exe -v /ourwebapp -p ..\ourwebapp\ -u的日志文件中显示命令行-f "........\Binaries\Mixed Platforms_PublishedWebsites\ourwebapp\"* 这会导致错误,因为我们有一些 32 位第三方 dll: ASPNETCOMPILER:错误 ASPCONFIG:无法加载文件或程序集 'Leadtools.编解码器或其依赖项之一。试图加载格式不正确的程序。[C:\Builds\5\OurApp\OurApp Build\Sources\Product\Solutions\ourwebapp_ourwebapp.metaproj]

有谁知道正确的解决方案文件语法来强制 32 位构建无论如何。谢谢你。

0 投票
0 回答
624 浏览

asp.net - aspnet_compiler 可以看到虚拟子目录吗?

在 IIS 中,我的网站有一个虚拟目录,它位于端口 87 上,指向sites\MySiteName\. 站点内还有一个虚拟子目录指向sites\otherSite\otherControls.

这是解决方案文件的摘录websites.sln,其中包含我的网站:

当我实际访问该站点时,这很好用。当我在项目websites.sln(包含我的站点)上运行 msbuild 时,它会尽职尽责地创建一个元项目并尝试构建。一切都很好,直到它尝试构建一个引用虚拟子目录中控件的文件。

ASPPARSE: The file '/LM/W3SVC/2/otherControls/control.ascx' does not exist. in \LM\W3SVC\2\file.aspx

cognethos 建议“ASP 编译器现在知道根文件夹的安装位置,但是由于指定了物理文件夹,它只会在该文件夹中查找,因此不会找到其他虚拟文件夹。”

推荐的解决方案是省略物理路径。当我这样做时,它似乎不再在构建MySiteName,而是发出明显来自其他站点之一的警告。

我尝试省略物理和虚拟路径,而是使用 MetabasePath:

这会产生毫无希望的错误

C:\BUILD\MySiteName.metaproj : error MSB3462: Either MetabasePath or VirtualPath must be specified.

我不太清楚为什么它不能识别我给它的 MetabasePath。我尝试完全跳过使用 msbuild 并将其直接指向该aspnet_compiler站点,仅使用 MetabasePath 并产生与我删除物理路径时相同的问题......它似乎正在构建其他站点之一。

0 投票
3 回答
1265 浏览

svn - ASP.Net 编译器如何在部署中排除 .svn 目录

在我的本地机器上,我检查了一个 Web 应用程序,然后使用 MSBuild 对其进行编译,然后使用 aspnet_compiler 对其进行预编译和部署。命令行如下所示:

这在本地测试中工作得很好,这意味着预编译的网站被复制到目标目录而不复制任何 .svn 目录。但是,在我为 CC.Net 编写了构建脚本的远程计算机上,.svn 目录确实被复制了。为 aspnet_compiler 手动运行命令行会得到相同的结果(复制到 .svn 文件夹):

在这两种情况下,我都是从 x86 VS 工具提示符运行的。知道为什么会有不同的行为吗?