Visual Studio 为什么VS 2005总是给我“'x'在命名空间'y'中不明确”的错误?

hfwmuf9z  于 2023-03-13  发布在  其他
关注(0)|答案(8)|浏览(182)

我不确定我更改了什么VS设置,或者是web.config设置还是什么,但是我一直在错误列表中看到这个错误,但是所有的解决方案都构建得很好。

Error   5   'CompilerGlobalScopeAttribute' is ambiguous in the namespace 'System.Runtime.CompilerServices'. C:\projects\MyProject\Web\Controls\EmailStory.ascx  609 184 C:\...\Web\
Error   6   'ArrayList' is ambiguous in the namespace 'System.Collections'. C:\projects\MyProject\Web\Controls\EmailStory.ascx.vb   13  28  C:\...\Web\
Error   7   'Exception' is ambiguous in the namespace 'System'. C:\projects\MyProject\Web\Controls\EmailStory.ascx.vb   37  21  C:\...\Web\
Error   8   'EventArgs' is ambiguous in the namespace 'System'. C:\projects\MyProject\Web\Controls\EmailStory.ascx.vb   47  64  C:\...\Web\
Error   9   'EventArgs' is ambiguous in the namespace 'System'. C:\projects\MyProject\Web\Controls\EmailStory.ascx.vb   140 72  C:\...\Web\
Error   10  'Array' is ambiguous in the namespace 'System'. C:\projects\MyProject\Web\Controls\EmailStory.ascx.vb   147 35  C:\...\Web\

    [...etc...]

Error   90  'DateTime' is ambiguous in the namespace 'System'.  C:\projects\MyProject\Web\App_Code\XsltHelperFunctions.vb   13  8   C:\...\Web\

你可以想象,这真的很烦人,因为代码中到处都是蓝色的波浪形下划线,在错误列表窗格中过滤掉相关的错误几乎是不可能的。我检查了默认的ASP.NET web.config和machine.config,但似乎没有什么突出的。

  • 编辑:* 以下是发生错误的一些源代码:
'Error #5: whole line is blue underlined'
<%= addEmailToList.ToolTip %>

'Error #6: ArrayList is blue underlined'
Private _emails As New ArrayList()

'Error #7: Exception is blue underlined'
Catch ex As Exception

'Error #8: System.EventArgs is blue underlined'
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

'Error #9: System.EventArgs is blue underlined'
Protected Sub sendMessage_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles sendMessage.Click

'Error #10: Array is blue underlined'
Me.emailSentTo.Text = Array.Join(";", mailToAddresses)

'Error #90: DateTime is blue underlined'
If DateTime.TryParse(data, dateValue) Then
  • 编辑 *:GacUtil结果

一个二个一个一个

  • 编辑 *:ngen的有趣结果:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ngen display mscorlib /verbose

Microsoft (R) CLR Native Image Generator - Version 2.0.50727.832
Copyright (C) Microsoft Corporation 1998-2002. All rights reserved.

NGEN Roots:

mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=5a00410050002d004e0035002e0031002d003800460053002d00330037004200430043003300430035000000 
    ScenarioDefault 
        mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=5a00410050002d004e0035002e0031002d003800460053002d00330037004200430043003300430035000000 
            DisplayName = mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
            Native image = {7681CE0F-F0E7-F03A-2B56-96345589D82B}
            Hard Dependencies:
            Soft Dependencies:
mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 
    ScenarioNoDependencies 
        mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 
            DisplayName = mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
            Native image = {7681CE0F-F0E7-F03A-2B56-96345589D82B}
            Hard Dependencies:
            Soft Dependencies:

NGEN Roots that depend on "mscorlib":
[...a bunch of stuff...]

Native Images:

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
    Source MVID:    {D34102CF-2ABF-4004-8B42-2859D8FF27F3}
    Source HASH:    bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec
    NGen GUID sign: {7681CE0F-F0E7-F03A-2B56-96345589D82B}
    OS:     WinNT
    Processor:  x86(Pentium 4) (features: 00008001)
    Runtime:    2.0.50727.832
    mscorwks.dll:   TimeStamp=461F2E2A, CheckSum=00566DC9
    Flags:      
    Scenarios:      <no debug info> <no debugger> <no profiler> <no instrumentation> 
    Granted set:    <PermissionSet class="System.Security.PermissionSet" version="1" Unrestricted="true"/>

    File:       

C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\0fce8176e7f03af02b5696345589d82b\mscorlib.ni.dll
    Dependencies:
        mscorlib, Version=2.0.0.0, PublicKeyToken=b77a5c561934e089:
            Guid:{D34102CF-2ABF-4004-8B42-2859D8FF27F3}
            Sign:bbf5cfc19bea4e13889e39eb1fb72479a45ad0ec

原生映像中应该只有一个mscorlib,对吗?我怎么才能去掉其他的?

u2nhd7ah

u2nhd7ah1#

我最近也遇到了同样的错误。下面是我如何修复它的(我希望它对你也有效):

  • 打开项目属性,转到参考部分。
  • 删除上半部分中对系统的引用。
    我认为它引用了系统两次,但它只显示了一次。因此,模棱两可的引用。
ljo96ir5

ljo96ir52#

基于gacutil输出的结果(谢谢您这样做;我认为这很有帮助),我会说您需要尝试在.NET框架安装和Visual Studio 2005上运行修复程序。我不确定这是否会修复它,但正如您从gacutil的输出中看到的,您没有针对2.0的任何修复程序。
在VS 2005命令提示符下,我得到:

Microsoft (R) .NET Global Assembly Cache Utility.  Version 2.0.50727.42
Copyright (c) Microsoft Corporation.  All rights reserved.

The Global Assembly Cache contains the following assemblies:
  mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=x86

Number of items = 1

在VS 2003命令提示符下,我得到:

Microsoft (R) .NET Global Assembly Cache Utility.  Version 1.1.4322.573
Copyright (C) Microsoft Corporation 1998-2002. All rights reserved.

The Global Assembly Cache contains the following assemblies:

The cache of ngen files contains the following entries:
    mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=5a00410050002d004e0035002e0031002d003800460053002d00330037004200430043003300430035000000
    mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=5a00410050002d004e0035002e0031002d0038004600440053002d00330037004200440036004600430034000000

Number of items = 2
q5lcpyga

q5lcpyga3#

当请求帮助诊断编译问题时,发布违规的源代码通常会有所帮助:)
这些错误确实意味着指定的名称与另一个名称冲突,编译器无法解决此问题。

sqserrrh

sqserrrh4#

我也遇到过这种情况,特别是System.Data.SqlClient。尝试在项目管理器中取消选中命名空间,然后手动将其包含在.vb文件中,就像使用C#一样:
导入系统.数据.SqlClient

iyfjxgzm

iyfjxgzm5#

出现一个错误(如ArrayList),并将类型替换为全限定名(我不确定,但我猜如下所示:如果错误消失了,那么你真的遇到了一个解决冲突的问题,如果没有,那就是别的问题了。
如果所有的解决方案都构建得“很好”,并且有这些错误,我建议清理你的项目。删除所有编译过的东西(dll,pdb,无论什么),也删除阴影缓存的东西。也许它编译是因为它使用了旧版本的东西。

ycl3bljg

ycl3bljg6#

我知道这听起来很奇怪,但是您是使用“生成”还是“重建”来生成解决方案呢?如果我遇到了类似的有趣问题,对解决方案使用“全部重建”会有所帮助。

mtb9vblg

mtb9vblg7#

昨天我在VS2005ASP.NET网站项目中得到了同样的:突然间,由于之前的任何重大代码更改,名称空间“y”中“x”的加载出现了歧义,所有这些加载都源自非常基本的符号,如EventArgs、Type、DBNull等。
直接原因是mscorlib被重复引用,正如我在VS的类视图中看到的,我相信真正的原因是自动Windows更新,它迫使我在几分钟前重新启动机器。
尝试这样的特技像建立一个全新的ASP.NET网站项目,复制粘贴源文本(在同一台计算机上-没有帮助)或将项目移动到安装了相同VS 2005的第二台计算机上(这很有帮助,项目可以正常工作)我几乎可以肯定我的代码没有问题,但我的VS/.NET配置有问题。我非常不知道如何解决它,因为除了这一次,互联网上没有描述类似麻烦的痕迹。

dbf7pr2w

dbf7pr2w8#

重新安装.Net Framework 2.0
之后,gacutil(来自v2.0)将显示1 mscorlib而不是0。

相关问题