似乎在VS中的类图设计器中存在一个非常烦人的问题(我的版本是2010 Ultimate,发布,但在VS 2008中也观察到了这个问题).
当我尝试从DLL创建特定简单类的类图时,我收到以下错误:"某些选定的类型无法添加到类图中.检查代码是否有错误并确保所有所需的集会...... blah-blah-blah".我无法找到问题的根本原因,我无法区分类的哪些特征会影响该错误(它实际上可以为某些类构建类图,但不能为所有类构建类图).
我的代码不包含任何错误.我在一个单独的.cs文件中有多个类和接口定义,但这些类非常简单 - 甚至没有调用非托管/互操作.
对此有何解决方案?
也许这不是问题的根源,但请检查这些不会在图表中显示的类是否不是部分类,以及在同一文件中的该部分类之前是否没有定义任何其他类。例如,这样的代码会阻止表单在 Visual Studio 2010 的设计器中正确显示:
class AAA
{
//this class prevents BBB form from showing in designer
}
partial class BBB : Form
{
}
Run Code Online (Sandbox Code Playgroud)
如果将 AAA 声明移到 BBB 之后一切正常,仅按照上面显示的顺序发生错误。