ArcEngine中打开各种数据源(WorkSpace)的连接
1.创建workspacefactory
//方式1 Type factoryShpType = Type.GetTypeFromProgID("esriDataSourcesFile.ShapefileWorkspaceFactory");//Shp Type factoryGdbType = Type.GetTypeFromProgID("esriDataSourcesGDB.FileGDBWorkspaceFactory");//Gdb Type factorySdeType = Type.GetTypeFromProgID("esriDataSourcesGDB.SdeWorkspaceFactory");//Sde Type factoryMdbType = Type.GetTypeFromProgID("esriDataSourcesGDB.AccessWorkspaceFactory");//Mdb Type factorySqliteType = Type.GetTypeFromProgID("esriDataSourcesGDB.SqlWorkspaceFactory");//Sqlite Type factoryCadType = Type.GetTypeFromProgID("esriDataSourcesFile.CadWorkspaceFactory");//Cad IWorkspaceFactory workspaceFactory = (IWorkspaceFactory)Activator.CreateInstance(factory***Type); ------------------------------------------------------------------------------ //方式2 IWorkspaceFactory wksGdbFactory = new FileGDBWorkspaceFactoryClass(); IWorkspaceFactory wksSdeFactory = new SdeWorkspaceFactoryClass(); IWorkspaceFactory wksMdbFactory = new AccessWorkspaceFactoryClass(); IWorkspaceFactory2 wksRasterFactory = new RasterWorkspaceFactoryClass();
2.调用workspacefactory的方法打开数据源
//MDB,GDB,SDE文件路径 string strDbPath = "文件路径"; IWorkspace wks = wksFactory.OpenFromFile(strDbPath, 0); //SDE也可通过连接信息打开 IPropertySet propSet=new PropertySetClass(); propSet.SetProperty("server","服务器机器名" ); propSet.SetProperty("instance","SDE运行的端口号"); propSet.SetProperty("user","用户名"); propSet.SetProperty("password","口令" ); propSet.SetProperty("password","口令" ); IWorkspace wks = wksFactory.Open(propSet, 0);
//MDB,GDB,SDE文件路径 string strDbPath = "文件路径"; IWorkspace wks = wksFactory.OpenFromFile(strDbPath, 0); //SDE也可通过连接信息打开 IPropertySet propSet=new PropertySetClass(); propSet.SetProperty("server","服务器机器名" ); propSet.SetProperty("instance","SDE运行的端口号"); propSet.SetProperty("user","用户名"); propSet.SetProperty("password","口令" ); propSet.SetProperty("password","口令" ); IWorkspace wks = wksFactory.Open(propSet, 0);
本博有部分内容来自网络,如有问题请联系:hebeilijianghua@qq.com,并注明来自博客园。
浙公网安备 33010602011771号