C#命名空间/类位于单独的文件中,在查看时导致错误

C#命名空间/类位于单独的文件中,在查看时导致错误,c#,class,namespaces,using,C#,Class,Namespaces,Using,我有两个项目“HOD”和“控制器”。控制器是命名空间为“控制器”的类库。在HOD的代码文件中,我试图通过“使用控制器”引用控制器名称空间。我在HOD项目中为控制器添加了一个引用,它确实显示在VS2008的references文件夹下 当我构建项目时,我没有收到任何错误,但是当我查看页面时,我收到错误“找不到类型或命名空间名称“Controllers”(您是否缺少using指令或程序集引用?) Controllers.cs(类库、控制器项目) index.aspx.cs(HOD项目) 该项目位于我

我有两个项目“HOD”和“控制器”。控制器是命名空间为“控制器”的类库。在HOD的代码文件中,我试图通过“使用控制器”引用控制器名称空间。我在HOD项目中为控制器添加了一个引用,它确实显示在VS2008的references文件夹下

当我构建项目时,我没有收到任何错误,但是当我查看页面时,我收到错误“找不到类型或命名空间名称“Controllers”(您是否缺少using指令或程序集引用?)

Controllers.cs(类库、控制器项目)

index.aspx.cs(HOD项目)

该项目位于我们的Web服务器上,Controllers.dll与HOD.dll位于同一个bin文件夹中。提前感谢您的帮助

编辑:。sln内容

Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{E24C65DC-7377-472B-9ABA-BC803B73C61A}") = "T:", "T:\", "{1D5F28B3-E6A0-4CF8-B7A3-43121225C73E}"
    ProjectSection(WebsiteProperties) = preProject
    TargetFramework = "2.0"
    Debug.AspNetCompiler.VirtualPath = "/T:"
    Debug.AspNetCompiler.PhysicalPath = "T:\"
        Debug.AspNetCompiler.TargetPath = "E:\DEV\webdev\webdev\PrecompiledWeb\T:\"
        Debug.AspNetCompiler.Updateable = "true"
        Debug.AspNetCompiler.ForceOverwrite = "true"
        Debug.AspNetCompiler.FixedNames = "false"
        Debug.AspNetCompiler.Debug = "True"
        Release.AspNetCompiler.VirtualPath = "/T:"
        Release.AspNetCompiler.PhysicalPath = "T:\"
        Release.AspNetCompiler.TargetPath = "E:\DEV\webdev\webdev\PrecompiledWeb\T:\"
        Release.AspNetCompiler.Updateable = "true"
        Release.AspNetCompiler.ForceOverwrite = "true"
        Release.AspNetCompiler.FixedNames = "false"
        Release.AspNetCompiler.Debug = "False"
        VWDPort = "53327"
    EndProjectSection
EndProject

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HOD", "Y:\HOD\HOD.csproj", "{5F523FB7-B902-4E6E-BAA9-C2EB37D69EC7}"
EndProject

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Controllers", "Y:\HOD\Controllers\Controllers.csproj", "{E6A16990-5FC6-4FE3-8DAB-CD2FEC8CF4FF}"
EndProject
Global
    GlobalSection(SolutionConfigurationPlatforms) = preSolution
        Debug|Any CPU = Debug|Any CPU
        Release|Any CPU = Release|Any CPU
    EndGlobalSection
    GlobalSection(ProjectConfigurationPlatforms) = postSolution
        {C8A12BBE-4483-4560-97A4-795F2E57D667}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {C8A12BBE-4483-4560-97A4-795F2E57D667}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {C8A12BBE-4483-4560-97A4-795F2E57D667}.Release|Any CPU.ActiveCfg = Debug|Any CPU
        {C8A12BBE-4483-4560-97A4-795F2E57D667}.Release|Any CPU.Build.0 = Debug|Any CPU
        {A81C381B-1E12-49B0-8BC0-8532EF9F216F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {A81C381B-1E12-49B0-8BC0-8532EF9F216F}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {A81C381B-1E12-49B0-8BC0-8532EF9F216F}.Release|Any CPU.ActiveCfg = Debug|Any CPU
        {A81C381B-1E12-49B0-8BC0-8532EF9F216F}.Release|Any CPU.Build.0 = Debug|Any CPU
        {BD46969E-9D1C-419A-A82C-388E35BF7C13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {BD46969E-9D1C-419A-A82C-388E35BF7C13}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {BD46969E-9D1C-419A-A82C-388E35BF7C13}.Release|Any CPU.ActiveCfg = Debug|Any CPU
        {BD46969E-9D1C-419A-A82C-388E35BF7C13}.Release|Any CPU.Build.0 = Debug|Any CPU
        {1D5F28B3-E6A0-4CF8-B7A3-43121225C73E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {1D5F28B3-E6A0-4CF8-B7A3-43121225C73E}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {1D5F28B3-E6A0-4CF8-B7A3-43121225C73E}.Release|Any CPU.ActiveCfg = Debug|Any CPU
        {1D5F28B3-E6A0-4CF8-B7A3-43121225C73E}.Release|Any CPU.Build.0 = Debug|Any CPU
        {5F523FB7-B902-4E6E-BAA9-C2EB37D69EC7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {5F523FB7-B902-4E6E-BAA9-C2EB37D69EC7}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {5F523FB7-B902-4E6E-BAA9-C2EB37D69EC7}.Release|Any CPU.ActiveCfg = Release|Any CPU
        {5F523FB7-B902-4E6E-BAA9-C2EB37D69EC7}.Release|Any CPU.Build.0 = Release|Any CPU
        {E6A16990-5FC6-4FE3-8DAB-CD2FEC8CF4FF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {E6A16990-5FC6-4FE3-8DAB-CD2FEC8CF4FF}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {E6A16990-5FC6-4FE3-8DAB-CD2FEC8CF4FF}.Release|Any CPU.ActiveCfg = Release|Any CPU
        {E6A16990-5FC6-4FE3-8DAB-CD2FEC8CF4FF}.Release|Any CPU.Build.0 = Release|Any CPU
    EndGlobalSection
    GlobalSection(SolutionProperties) = preSolution
        HideSolutionNode = FALSE
    EndGlobalSection
EndGlobal
编译器输出

------重新生成所有已启动:项目:控制器,配置:调试任何CPU------ C:\Windows\Microsoft.NET\Framework\v3.5\Csc.exe/noconfig/nowarn:17011702/errorreport:prompt/warn:4/define:DEBUG;跟踪/引用:“C:\Program Files(x86)\reference Assembly\Microsoft\Framework\v3.5\System.Core.dll”/reference:“C:\Program Files(x86)\reference Assembly\Microsoft\Framework\v3.5\System.Data.DataSetExtensions.dll”/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Data.dll/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.dll/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll/reference:“C:\Program Files(x86)\reference assemblemblems\Microsoft\Framework\v3.5\System.Xml.Linq.dll”/debug+/debug:full/filealign:512/optimize-/out:obj\debug\Controllers.dll/target:library Class1.cs Properties\AssemblyInfo.cs

编译完成--0个错误,0个警告 控制器->Y:\HOD2\Controllers\bin\Debug\Controllers.dll ------已启动全部重建:项目:HOD,配置:调试任何CPU------ C:\Windows\Microsoft.NET\Framework\v3.5\Csc.exe/noconfig/nowarn:17011702/errorreport:prompt/warn:4/define:DEBUG;跟踪/引用:Y:\HOD2\Controllers\bin\Debug\Controllers.dll/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Configuration.dll/reference:“C:\Program Files(x86)\reference Assemblies\Microsoft\Framework\v3.5\System.Core.dll”/reference:“C:\Program Files(x86)\参考程序集\Microsoft\Framework\v3.5\System.Data.DataSetExtensions.dll“/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Data.dll/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.dll/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.EnterpriseServices.dll/参考:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Web.dll/参考:“C:\Program Files(x86)\reference Assembly\Microsoft\Framework\v3.5\System.Web.Extensions.Design.dll”/参考:“C:\Program Files(x86)\reference Assembly\Microsoft\Framework\v3.5\System.Web.Extensions.dll”/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Web.Mobile.dll/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Web.Services.dll/reference:C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll/reference:“C:\Program Files(x86)\reference assemblemblems\Microsoft\Framework\v3.5\System.Xml.Linq.dll”/debug+/debug:full/optimize-/out:obj\debug\HOD.dll/target:library index.aspx.cs index.aspx.designer.cs Properties\AssemblyInfo.cs

编译完成--0个错误,0个警告 HOD->Y:\HOD2\bin\HOD.dll
=========全部重建:2个成功,0个失败,0个跳过========

我尝试使用上面列出的两个项目重新创建您的解决方案。一切都很顺利。(我以为布拉姆斯格是一个年轻人。)

根据您发布的内容,似乎没有任何错误,这让我认为这是一个缓存问题。我将尝试清除以下内容:

  • 您的web应用程序的bin文件夹
  • C:\Windows\Microsoft.NET\Framework\v2.0.50727\ASP.NET临时文件
  • 删除两个项目的.csproj.user文件。我过去也有过这样的问题

如果这些没有帮助,我会进一步调查。你能发布其他相关的源代码吗?可能是网页的标记?

chelfers,感谢您在此处发布sln文件。根据它,你没有项目参考

您可以从Visual Studio中添加它(删除引用、保存、添加引用),也可以添加以下行:

ProjectReferences = "{E6A16990-5FC6-4FE3-8DAB-CD2FEC8CF4FF}|Controllers.dll;"
就在下面

ProjectSection(WebsiteProperties) = preProject
    TargetFramework = "2.0"
(为了安全起见,请先复制一份.sln文件)


PS:现在是21世纪,请转到3.5版:)

您的服务器上是否有防病毒软件

我遇到过这样的问题:由于文件被服务器上的McAffee锁定,aspnet_wp无法加载DLL

修复方法是禁用bin目录上的防病毒实时检查

干杯,
弗洛里安

不应该这样。可以在此处显示.sln内容吗?请尝试将两个项目放在一个解决方案中,并将引用添加到另一个项目,而不是添加到.dll。它们位于同一个解决方案中,我正在引用“控制器”项目。我还尝试了引用DLL。维塔利,你所说的解决方案内容是什么意思?我的意思是在记事本中打开.sln文件并将其内容粘贴到这里。斯图尔特,很遗憾,你的建议不起作用。唯一的另一段代码是,现在我已经去掉了所有其他部分。我仍然收到错误。我认为问题在于我的代码在服务器上,而不是我的本地计算机上。当我在“VisualStudioDevelopmentServer”中运行它时,它不会出现问题。当我从我们的IIS服务器(代码驻留的地方)打开它时,它会在查看时出错。该sln看起来不像基于IIS的:),但如果您在IIS方面有问题,可能是安全问题。检查这篇文章:解决方案在我的本地PC上,所有文件
ProjectReferences = "{E6A16990-5FC6-4FE3-8DAB-CD2FEC8CF4FF}|Controllers.dll;"
ProjectSection(WebsiteProperties) = preProject
    TargetFramework = "2.0"