【发布时间】:2017-01-01 12:00:07
【问题描述】:
我有一个 C# 应用程序并使用 xml 文件将连接字符串设置为我的 sql 数据库。数据库用 tableadapter 填充 datagridviews。我希望在填充 datagridview 之前设置连接字符串,因为我有 DataGridView 的 CellValueChanged 事件。
我现在代表 From_Load 的代码是:
xmldoc.Load("D:\\XML\\paths.xml");
XmlNode node = xmldoc.DocumentElement.SelectSingleNode("/paths/sqlconnection");
sqlconnect = node.InnerText;
cn = new SqlCeConnection("Data Source=" + sqlconnect);
// TODO: Diese Codezeile lädt Daten in die Tabelle "database1DataSet.Raum". Sie können sie bei Bedarf verschieben oder entfernen.
this.raumTableAdapter1.Fill(this.database1DataSet.Raum);
// TODO: Diese Codezeile lädt Daten in die Tabelle "database1DataSet.Firma". Sie können sie bei Bedarf verschieben oder entfernen.
this.firmaTableAdapter1.Fill(this.database1DataSet.Firma);
// TODO: Diese Codezeile lädt Daten in die Tabelle "database1DataSet.Kunde". Sie können sie bei Bedarf verschieben oder entfernen.
this.kundeTableAdapter1.Fill(this.database1DataSet.Kunde);
// TODO: Diese Codezeile lädt Daten in die Tabelle "database1DataSet.Ansprechperson". Sie können sie bei Bedarf verschieben oder entfernen.
this.ansprechpersonTableAdapter1.Fill(this.database1DataSet.Ansprechperson);
但我收到一个错误,即在 CellValueChanged 时未设置连接字符串。
我的 XML 文件是这样设置的:
<?xml version="1.0" encoding="UTF-8"?>
- <paths>
<sqlconnection>D:\\BDTWelcome - Kopie 2.0 fixed\\BDTWelcome\\Database1.sdf</sqlconnection>
<ExcelVorlagen>D:\\BröExcelVorlagen</ExcelVorlagen>
</paths>
如果你能告诉我我的错误在哪里,那就太棒了。
【问题讨论】:
-
你在哪里打开你的连接?
-
如果你知道表单加载之前的xml文件路径,你可以尝试在构造函数中加载相同的xml而不是在表单加载中?
-
我在执行 sql 请求之前打开了与数据库的连接
-
好的,但这不是您上面代码中的内容。您设置连接,然后尝试用适配器填充您的表。您的数据集从哪里得知正确的连接?
-
我现在确实设置了数据集的连接字符串,但错误仍然相同,似乎在表格适配器填充数据网格视图之前已经填充了它,因为如果我将进程记录在文件它甚至没有进入表单加载。
标签: c# sql xml winforms visual-studio-2010