17

我无法在我们的构建环境中构建我的 Web 应用程序(不是网站)。我们在构建环境中使用 DMAKE(不幸的是,这是不可协商的,因此不允许使用 MSBUILD)以及通过调用 asp.net 预编译器时

C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_compiler -d -nologo -p 站点 -f -fixednames -errorstack -v / 调试

我们得到以下错误

错误 ASPPARSE:无法加载类型 'XYAdmin.Site.Global

如果我从 ide 编译它是成功的。如果我然后用 aspnet_compilier 编译它是成功的。因此,当我尝试编译的目标 dll 位于我正在编译的 Web 应用程序的 bin 中时,我只能使用 aspnet_compiler 成功编译。

我不断遇到有关使用 MSBUILD 的解决方案的帖子,不幸的是我无法尝试。

任何帮助,将不胜感激

4

8 回答 8

15

我们的 Web 应用程序遇到了同样的问题: 错误 ASPPARSE: 无法加载类型“...”

问题是我们在磁盘上有文件(在项目文件夹中),但它没有包含在我们的应用程序项目中(在 .csproj 文件中)。我们通过在项目中包含文件解决了这个问题:)

于 2009-12-17T11:53:48.363 回答
4

我在使用 NANT 时遇到了类似的问题。诀窍是将 Web 应用程序代码文件编译成 dll,然后在使用 aspnet_compiler 时将其包含在内。

使用命令行编译器,csc.exe (c#) 或 vbc.exe (visual basic),使用类型库的输出编译您的 Web 应用程序。这将创建一个您可以在 aspnet_compiler 任务中使用的 dll

于 2009-07-23T21:17:51.790 回答
2

您是否尝试过使用 -p 指定路径?在我看来,它找不到那种类型/组件。

http://msdn.microsoft.com/en-us/library/ms229863(VS.80).aspx

于 2008-12-13T19:20:55.353 回答
1

对于 Web 应用程序,您必须在运行 aspnet 编译器之前将 .vb 文件构建为 dll 并将其放入 bin 文件夹中。检查 Visual Studio 中的输出窗口,您将看到 VB 编译器的命令行。在运行 aspnet 编译器之前先运行它,asp 页面应该能够找到丢失的类型。

于 2009-07-22T18:58:36.667 回答
1

bin通过简单地删除所有和文件夹为我解决了这个问题obj。似乎他们不知何故处于糟糕的状态。我也删除了.sou文件,但我认为这不是问题。

于 2016-05-31T14:59:37.940 回答
0

solution :

-p Site path must have the directory path of .csproj file location.

ex :-

aspnet_compiler -p D:\Projects\MGM\mgm\mgm -v / D:\Projects\MGM-deploy\mgm_compiled
于 2013-10-22T08:21:36.850 回答
0

我刚刚遇到此错误并找到了两种修复方法:

  • 将 global.asax 文件中的 Codebehind 属性更改为 CodeFile 并在类声明中添加“部分”
  • 在部署项目的属性页中,设置“版本输出程序集”并提供版本号

我真的不知道为什么两者都有效,但确实有效。

于 2013-03-25T16:33:50.583 回答
0

我收到了同样的问题。

我通过将我的 webapp 的 DLL 从 OBJ/DEBUG 文件夹复制到 BIN 文件夹来修复它。

于 2009-11-12T01:34:16.830 回答