我得到一个:
找不到类型或名称空间名称
错误的c# WPF应用程序在VS2010。这部分代码编译得很好,但突然就出现了这个错误。我已经尝试删除项目引用和using语句,关闭VS2010并重新启动,但我仍然有这个问题。
有什么想法,为什么这可能会发生,似乎我在做正确的事情re Reference & using语句?
我还注意到在VS2010,智能感知的名称空间是工作的好,所以它似乎VS2010有项目引用,是看到名称空间在一方面,但在编译期间没有看到它?
我得到一个:
找不到类型或名称空间名称
错误的c# WPF应用程序在VS2010。这部分代码编译得很好,但突然就出现了这个错误。我已经尝试删除项目引用和using语句,关闭VS2010并重新启动,但我仍然有这个问题。
有什么想法,为什么这可能会发生,似乎我在做正确的事情re Reference & using语句?
我还注意到在VS2010,智能感知的名称空间是工作的好,所以它似乎VS2010有项目引用,是看到名称空间在一方面,但在编译期间没有看到它?
当前回答
在构建解决方案时,我得到了相同的错误(类型或名称空间' '找不到)。在它下面,我看到一个警告,声明“引用无法解析”,并确保“程序集存在于磁盘上”。
我非常困惑,因为我的DLL非常清楚地位于引用所指向的位置。VS似乎没有突出显示任何错误,直到我尝试构建解决方案。
我终于意识到问题所在(或者至少我怀疑是问题所在)。我在同一个解决方案中构建库文件。因此,即使它存在于磁盘上,它也在那个位置被重新构建(在库重新构建的过程中,我的另一个项目-在同一解决方案中-引用了库,必须确定库不存在)
当我右键单击项目并只构建该项目,而不是整个解决方案时,我没有得到错误。
为了解决这个问题,我将库作为依赖项添加到正在使用它的项目中。
这样做:
我在解决方案资源管理器中右键单击我的解决方案并选择 “属性” 然后在“Common Properties”中选择“Project Dependencies”。 然后在项目下拉菜单中,我选择了项目 依靠图书馆,而且 选中“依赖”下的库旁边的复选框
这确保首先构建库项目。
其他回答
在将一些新代码合并到vs2019项目后遇到了同样的问题。 重新启动VS,卸载和重新加载项目,确保解决方案中所有项目ToolsVersion=和TargetFrameworkVersion相同。这些都无济于事。
我有一个项目基板的情况,未能找到名称空间皮肤(在项目皮肤)。
最后我打开了基板。并检查了所有的ProjectReference Include条目。其他的都在那里,但没有对Skin的引用,即使Skin确实显示在小项目依赖对话框的复选框中。因此,项目依赖关系对话框接受了皮肤的复选框(并将其保存在某个地方),但没有改变basis .csproj。然后我手动添加ProjectReference Include,确保我拥有皮肤项目的正确路径和GUID。
< ProjectReference Include = " \ Skin皮肤csproj”>。 < > {1ad4b5d7-5014-4f5f-983e-2c59ac0e0028} < - >项目项目 < Name > Skin - < Name > < / ProjectReference >
然后我保存了基板。Csproj,问题就解决了。正如其他人所说,这是VS工具的一个问题
首先,我将验证您的项目生成的信息是否损坏。在解决方案上进行清理和重新构建。
如果这还不起作用,我在过去看到的一种解决设计器问题的方法是打开一个windows窗体项目,然后再次关闭它。这有点像鸡内脏,所以别抱太大希望。
我遇到的一个更棘手的情况是: 项目一的目标是安装了Microsoft.Bcl.Async包的4.0完整框架。 项目二的目标是4.0完整框架,但不会在引用项目一的类时编译。
一旦我在第二个项目上安装了Async NuGet包,它编译得很好。
[Facepalm]我的问题是我在c++的做事方式中添加了依赖。
转到无法构建的项目,在解决方案资源管理器中打开“References”文件夹,查看是否列出了您的依赖项。
如果没有,您可以“添加引用”并在Projects选项卡上选择依赖项。
Shankar繁荣。
好吧,多年后使用VS 2017 . net Core 2.2 Razor Pages,我觉得这个答案可能会帮助到一些人。 如果是蛇,它会咬我的。 我到处乱扔东西,更改名称,重命名模型,突然我得到了这个错误:
错误CS0246类型或命名空间名称不能为“UploadFileModel” 找到(是否缺少using指令或程序集引用?)
这在我的。chstml Razor Page中用红色划线。(修正后未加下划线):
@page
@model UploadFileModel
所以,最后,幸运的是,我从其他人那里找到了我最初使用的代码,注意,名称空间不包括.cshtml文件名!!
这是我的坏假错误在命名空间的页面名称打我自己:
namespace OESAC.Pages.UploadFile
{
public class UploadFileModel : PageModel
{
我的原始代码所拥有的,我所要做的就是从命名空间UploadFile中删除页面名称:
namespace OESAC.Pages
{
public class UploadFileModel : PageModel
{
瞧,所有的错误都消失了!! 愚蠢的我。但是你知道,微软让。net c# MVC的东西让我们这些非计算机科学家非常困惑。我经常被鞋带绊倒,试图找出模型名称、页面名称和使用它们的语法。不应该这么难。哦。我希望错误和解决方案能帮助别人。错误是正确的,没有命名空间名为“UploadFileModel”哈哈。