我知道以前曾经问过这个问题,但是我已经四处看了看,我找不到与我的问题完全匹配的任何内容,所以对于欺骗帖子道歉。
我在C#中编写一个使用内部SqlCE DB的.NET#.5应用程序。每当我在调试器中运行应用程序时,我都会在下面的BindingSource行标题中列出错误:
this.Load += new System.EventHandler(this.Main_Load);
((System.ComponentModel.ISupportInitialize)(this.dbCDRDataSet1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.animalControlBindingSource)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
这是我的主窗体(Main.Designer.cs)的Designer.cs部分。如果我注释掉代码,它似乎完美无缺,但由于它的自动代码,它每次都会弹回。
数据库结构的一些背景知识:
我的数据库是dbCDR.sdf。我有一个数据集dbCDEDataSet1.xsd,它包含所有表。其中一个表称为AnimalControl。
如果我尝试重写有问题的行,Intellisense会给出与autogen代码相同的结果。
我尝试删除并重新创建数据集(使用相同的名称)几次,只是为了查看它是否会强制进行更完整的刷新。
我可以根据需要提供更多详细信息,请告诉我。非常感谢!
答案 0 :(得分:0)
我找到了!抱歉浪费你的时间。
Stack Trace的表名为“Animal Control”(带有空格)。当我第一次看到它时,我忽略了它。
Dunno是如何实现的,但我在Designer.cs代码中找到了令人讨厌的代码并更改了它。现在很高兴。
谢谢@Hylaean,强迫我更仔细地查看我的Stack Trace! : - )
答案 1 :(得分:0)
在animalControlBindingSource中,您需要将源名称设置为" AnimalControl"如果它的正确名称不是您使用的空间的名称。
应该在某处的设计师档案中。