//Console.WriteLine ("In HandleDataSourceAnnotation... ");
string providerName = null;
string connString = null;
- DbProviderFactory provider;
- XmlElement e;
+ DbProviderFactory provider = null;
+ XmlElement e, tablesElement = null;
foreach (XmlNode n in el.ChildNodes) {
e = n as XmlElement;
if (e.LocalName == "Connections") {
providerName = ((XmlElement)e.FirstChild).GetAttribute ("Provider");
connString = ((XmlElement)e.FirstChild).GetAttribute ("AppSettingsPropertyName");
+ provider = DbProviderFactories.GetFactory (providerName);
continue;
}
// #325464 debugging
//Console.WriteLine ("ProviderName: " + providerName + "Connstr: " + connString);
- provider = DbProviderFactories.GetFactory (providerName);
+ if (e.LocalName == "Tables")
+ tablesElement = e;
+ }
- if (e.LocalName == "Tables") {
- foreach (XmlNode node in e.ChildNodes) {
- ProcessTableAdapter (node as XmlElement, provider, connString);
- }
+ if (tablesElement != null && provider != null) {
+ foreach (XmlNode node in tablesElement.ChildNodes) {
+ ProcessTableAdapter (node as XmlElement, provider, connString);
}
- // #325464 debugging
- //Console.WriteLine (e.LocalName);
}
- // #325464 debugging
- //Console.WriteLine ("... exit");
}
private void ProcessTableAdapter (XmlElement el, DbProviderFactory provider, string connStr)