public static IWorkspace OpenWorkspace(IPropertySet ipropertySet_0) { IWorkspace workspace = null; IWorkspaceFactory factory; Exception exception; if (ipropertySet_0.Count == 1) { object obj2; object obj3; string str2 = ""; ipropertySet_0.GetAllProperties(out obj2, out obj3); if (((string[])obj2)[0] == "DATABASE") { str2 = System.IO.Path.GetExtension(((object[])obj3)[0].ToString()).ToLower(); } if (str2 == ".mdb") { factory = new AccessWorkspaceFactory(); try { workspace = factory.Open(ipropertySet_0, 0); } catch (Exception exception1) { exception = exception1; MessageBox.Show(exception.Message); } return(workspace); } if (str2 == ".gdb") { factory = new FileGDBWorkspaceFactory(); try { workspace = factory.Open(ipropertySet_0, 0); } catch (Exception exception2) { exception = exception2; MessageBox.Show(exception.Message); } } return(workspace); } factory = new SdeWorkspaceFactory(); try { workspace = factory.Open(ipropertySet_0, 0); } catch (Exception exception3) { exception = exception3; MessageBox.Show(exception.Message); } return(workspace); }
public static IWorkspace OpenWorkspace(IPropertySet ipropertySet_0) { object obj; object obj1; IWorkspaceFactory sdeWorkspaceFactoryClass; IWorkspace workspace = null; if (ipropertySet_0.Count != 1) { sdeWorkspaceFactoryClass = new SdeWorkspaceFactory(); try { workspace = sdeWorkspaceFactoryClass.Open(ipropertySet_0, 0); } catch (Exception exception) { MessageBox.Show(exception.Message); } } else { string str = ""; string lower = ""; ipropertySet_0.GetAllProperties(out obj, out obj1); if (((string[])obj)[0] == "DATABASE") { str = ((object[])obj1)[0].ToString(); lower = System.IO.Path.GetExtension(str).ToLower(); } if (lower == ".mdb") { sdeWorkspaceFactoryClass = new AccessWorkspaceFactory(); try { workspace = sdeWorkspaceFactoryClass.Open(ipropertySet_0, 0); } catch (Exception exception1) { MessageBox.Show(exception1.Message); } } else if (lower == ".gdb") { sdeWorkspaceFactoryClass = new FileGDBWorkspaceFactory(); try { workspace = sdeWorkspaceFactoryClass.Open(ipropertySet_0, 0); } catch (Exception exception2) { MessageBox.Show(exception2.Message); } } } return(workspace); }