当我编译我最新的asp.net程序并尝试在测试服务器上运行时,我收到此错误
Line 46: Dim dependencies() As String
Line 47: CType(Me,Global.System.Web.UI.Page).AppRelativeVirtualPath = "~/default.aspx"
Line 48: If (Global.ASP.default_aspx.__initialized = false) Then
Line 49: dependencies = New String(0) {}
Line 50: dependencies(0) = "~/default.aspx"
Source File: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\ocbuild\c0c442ff\f0292c99\App_Web_default.aspx.cdcab7d2.4ubu1wgu.0.vb Line: 48
Run Code Online (Sandbox Code Playgroud)
扩展编译器输出时的详细错误...
Microsoft (R) Visual Basic Compiler version 8.0.50727.3053
for Microsoft (R) .NET Framework version 2.0.50727.3053
Copyright (c) Microsoft Corporation. All rights reserved.
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\ocbuild\c0c442ff\f0292c99\App_Web_default.aspx.cdcab7d2.4ubu1wgu.0.vb(48) : error BC30560: 'default_aspx' is ambiguous in the namespace 'ASP'.
If (Global.ASP.default_aspx.__initialized = false) Then
~~~~~~~~~~~~~~~~~~~~~~~
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\ocbuild\c0c442ff\f0292c99\App_Web_default.aspx.cdcab7d2.4ubu1wgu.0.vb(51) : error BC30560: 'default_aspx' is ambiguous in the namespace 'ASP'.
Global.ASP.default_aspx.__fileDependencies = Me.GetWrappedFileDependencies(dependencies)
~~~~~~~~~~~~~~~~~~~~~~~
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\ocbuild\c0c442ff\f0292c99\App_Web_default.aspx.cdcab7d2.4ubu1wgu.0.vb(52) : error BC30560: 'default_aspx' is ambiguous in the namespace 'ASP'.
Global.ASP.default_aspx.__initialized = true
~~~~~~~~~~~~~~~~~~~~~~~
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\ocbuild\c0c442ff\f0292c99\App_Web_default.aspx.cdcab7d2.4ubu1wgu.0.vb(76) : error BC30560: 'default_aspx' is ambiguous in the namespace 'ASP'.
Private Sub __BuildControlTree(ByVal __ctrl As default_aspx)
~~~~~~~~~~~~
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\ocbuild\c0c442ff\f0292c99\App_Web_default.aspx.cdcab7d2.4ubu1wgu.0.vb(100) : error BC30560: 'default_aspx' is ambiguous in the namespace 'ASP'.
Me.AddWrappedFileDependencies(Global.ASP.default_aspx.__fileDependencies)
~~~~~~~~~~~~~~~~~~~~~~~
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\ocbuild\c0c442ff\f0292c99\App_Web_default.aspx.cdcab7d2.4ubu1wgu.1.vb(31) : error BC30560: 'default_aspx' is ambiguous in the namespace 'ASP'.
Return New ASP.default_aspx
~~~~~~~~~~~~~~~~
Run Code Online (Sandbox Code Playgroud)
我检查了一些事情,所有这些都证明是可以的:
[*]默认值在任何地方都没有定义两次
[*]一周都在最后一次发布
[*]没有旧文件仍与编译文件保持一致.我也多次清除临时文件.
[*]我尝试过使用其他aspx文件,所有这些文件都出现了模糊错误(不同源文件中的错误...)
[*]原始来源工作得很好!只有错误出现在编译的代码上.
关于如何解决这种歧义的任何想法或任何线索.
谢谢SK
我刚刚通过以下链接的帮助解决了这个问题:http ://www.netomatix.com/development/usercontrols2.aspx
将其添加到 aspx 或 ascx 页面 ClassName="MyModule"
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="MyModule.ascx.vb" ClassName="MyModule" %>
Run Code Online (Sandbox Code Playgroud)
好吧,这是我花了三天时间解决这个问题后发现的。
最后我想,如果我从解决方案中删除除一个项目(导致问题)之外的所有项目,我可以将其隔离到default.skin。这个问题似乎非常不稳定,因为如果我从此文件中删除某些行,它就会消失。然而,这并不一致,问题随机出现。
因此,在失去了在代码中修复它的所有希望之后,我决定尝试另一种方式。我将 aspnet_compiler 命令的选项从 -prefix 开关(为每个文件夹创建一个 dll)更改为 -o(所有编译后的 ui 都放在一个 dll 中),问题就消失了!
看来这个问题是由于 aspnet_compiler 中的一些错误造成的。它在这个版本中以某种方式被触发,我无法弄清楚。
我正在考虑转向更稳定的asp.net 3.5SP1(或者也许等待asp.net 4.0)有什么建议吗?
| 归档时间: |
|
| 查看次数: |
20209 次 |
| 最近记录: |