He volgende moet mijn applicatie doen:
- Inlezen van .mdb file.
- De database wegschrijven als xml file
- De database opmaak wegschrijven als xsd file.
Dit alles heb ik inmiddels gerealiseerd, echter de database is nog 'hard' gecodeerd.
Dit betekent dat ik slecht 1 mdb file kan inlezen en bovengenoemde actie's vervolg.
Dit zou betekenen dat ik voor iedere mdb database nieuwe code moet schrijven met dezelfde actie's. Kan ik niet tijdens het inlezen van de file, de namen van de tabellen opvragen en deze gebruiken in de query?
Zoals je ziet is dit slechts voor 1 database X.mdb met de tabellen A,B,C,D,E.
Maar het is zo statisch als de pest..... Ik wil het graag dynamisch hebben.
In de trend van:
- Inlezen van .mdb file.
- De database wegschrijven als xml file
- De database opmaak wegschrijven als xsd file.
Dit alles heb ik inmiddels gerealiseerd, echter de database is nog 'hard' gecodeerd.
Dit betekent dat ik slecht 1 mdb file kan inlezen en bovengenoemde actie's vervolg.
Dit zou betekenen dat ik voor iedere mdb database nieuwe code moet schrijven met dezelfde actie's. Kan ik niet tijdens het inlezen van de file, de namen van de tabellen opvragen en deze gebruiken in de query?
Code:
conn.ConnectionString = this.m_StrConnection;
this.m_ConnIsOpen = true;
// Query1
OleDbCommand com = new OleDbCommand(m_Query1, conn);
OleDbDataAdapter adapt = new OleDbDataAdapter(com); // SELECT * FROM A
adapt.Fill(this.dsConvert, "A");
// Query2
com.CommandText = m_Query2;
adapt.SelectCommand = com; // SELECT * FROM B
adapt.Fill(this.dsConvert, "B");
// Query2
com.CommandText = m_Query3;
adapt.SelectCommand = com; // SELECT * FROM C
adapt.Fill(this.dsConvert, "C");
// Query2
com.CommandText = m_Query4;
dapt.SelectCommand = com; // SELECT * FROM D
adapt.Fill(this.dsConvert, "D");
// Query5
com.CommandText = m_Query5;
adapt.SelectCommand = com; // SELECT * FROM E
adapt.Fill(this.dsConvert, "E");
this.m_ConnIsOpen = false;
this.dsConvert.WriteXmlSchema("Schema.xsd");
this.dsConvert.WriteXml("File.xml");
Zoals je ziet is dit slechts voor 1 database X.mdb met de tabellen A,B,C,D,E.
Maar het is zo statisch als de pest..... Ik wil het graag dynamisch hebben.
In de trend van:
Code:
adapt.SelectCommand = com; // SELECT * FROM Database.tables[Database.Count--]