0

在尝试构建时,突然之间(自从我从事这个项目以来的几天)我得到:

“类或命名空间‘OpenNETCF’中不存在类型或命名空间名称‘IO’(您是否缺少程序集引用?)”

但是当我注释掉那一行时(使用 OpenNETCF.IO.Ports;),我得到:

? OpenNETCF.IO.Ports.Handshake(多选...)?

当我点击它时,有两个选择:

OpenNETCF.IO.Ports.Handshake 
- and:
OpenNETCF.IO.Serial.Handshake

由于本单元中的代码处理打印,我选择“端口”(拒绝“串行”,因为它的阴/阳为“并行”)。所以它然后添加了我抱怨的使用(使用OpenNETCF.IO.Ports)......然后它又回到了原来的错误消息。

然而,我的参考文献中确实有几个 OpenNETCF 项目,即:

OpenNETCF
OpenNETCF.Data
OpenNETCF.Drawing
OpenNETCF.Net
OpenNETCF.Phone
OpenNETCF.VisualBasic // I don't know why, this is a C# project
OpenNETCF.Web.Services2
OpenNETCF.Windows.Forms
OpenNETCF.WindowsCE.Forms
OpenNETCF.Xml

什么可能导致这种鸡和蛋的追尾练习感到沮丧?

更奇怪的是,我得到“类或命名空间‘OpenNETCF’中不存在类型或命名空间名称‘Windows’(您是否缺少程序集引用?) ”在另一个 .cs 文件中指向此使用:

using OpenNETCF.Windows.Forms;

...但是无论如何,使用都显示为未使用,但是当我将其注释掉时,据称我得到了很多其他错误,因为它已经消失了,例如在这一行:

IntPtr hwnd  = OpenNETCF.Win32.Win32Window.GetCapture();

类或命名空间“OpenNETCF.Win32”中不存在类型或命名空间名称“Win32Window”(您是否缺少程序集引用?)

更新

在“Well Flip My Bits!”的另一集中 我刚刚编译,得到了那些关于无法将这行代码与已安装和配置的代码相协调的错误消息,等等,向上滚动以查看它应该丢失的“使用”在那里,再次编译,现在它编译得很好。什么蓝色的火焰?!?!?!?

4

2 回答 2

2

这听起来像是您在为“客户端配置文件”.net 版本构建项目同时引用客户端配置文件中不支持的程序集时看到的问题。

尝试更改项目的构建设置以使用不是“客户端配置文件”的 .net 框架版本。

于 2013-07-02T18:23:54.930 回答
2

也可以在类内部使用命名空间,因此请考虑将其移到那里,如果有使用两者的类而不是使用全名,如OpenNETCF.IO.Ports.Handshake handshake = new OpenNETCF.IO.Ports.Handshake()

对于使用命名空间的类:

using System;

namespace MyNamespace
{
    using OpenNETCF.IO.Ports;

    //...
}
于 2013-07-02T18:28:34.603 回答