本文整理汇总了C#中ESRI.get_Datasets方法的典型用法代码示例。如果您正苦于以下问题:C# ESRI.get_Datasets方法的具体用法?C# ESRI.get_Datasets怎么用?C# ESRI.get_Datasets使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ESRI
的用法示例。
在下文中一共展示了ESRI.get_Datasets方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ListFeatureClassesInGeodatabase
public string[] ListFeatureClassesInGeodatabase(ESRI.ArcGIS.Geodatabase.IWorkspace GeoDatabaseWorkspace)
{
ESRI.ArcGIS.Geodatabase.IEnumDataset geodatabaseDatasets = null;
ESRI.ArcGIS.Geodatabase.IDataset currentGeoDataBaseDataset = null;
ESRI.ArcGIS.DataSourcesGDB.FgdbFeatureClassName currentGeoDataBaseFeatureClassName = null;
try
{
// Make sure the passed Workspace is valid before moving on.
if (GeoDatabaseWorkspace != null)
{
// Make sure the Workspace is a valid ESRI Workspace.
if (!(GeoDatabaseWorkspace is ESRI.ArcGIS.Geodatabase.IWorkspace))
{
// Let the user know that the Workspace is not valid and.
if (ErrorMessage != null)
{
ErrorMessage("The specified Workspace is not a Valid Geodatabase Workspace. The MaintTools.FeatureClassUtilities.ListFeatureClassesInGeodatabase() Method Failed!");
}
// Return a NULL Array to the calling method to indicate that this method failed.
return null;
}
}
else
{
// Let the user know that the Workspace is not valid and.
if (ErrorMessage != null)
{
ErrorMessage("The specified Workspace is not a Valid Geodatabase Workspace. The MaintTools.FeatureClassUtilities.ListFeatureClassesInGeodatabase() Method Failed!");
}
// Return a NULL Array to the calling method to indicate that this method failed.
return null;
}
// Now that the File Geodatabase is open, open a Dataset in it.
geodatabaseDatasets = GeoDatabaseWorkspace.get_Datasets(ESRI.ArcGIS.Geodatabase.esriDatasetType.esriDTFeatureClass);
geodatabaseDatasets.Reset();
// Determine the Number of Datasets that were Found.
int counter = 0;
currentGeoDataBaseDataset = geodatabaseDatasets.Next();
while (currentGeoDataBaseDataset != null)
{
// Increment the Counter.
counter++;
// Move to the Next Dataset in the Geodatabase Datasets Enumerator.
currentGeoDataBaseDataset = geodatabaseDatasets.Next();
}
// Go through the List of Datasets in the Geodatabase and add their names to the Array of Feature Class Names.
string[] featureClassNames = new string[counter];
geodatabaseDatasets.Reset();
currentGeoDataBaseDataset = geodatabaseDatasets.Next();
int arrayIndex = 0;
while (currentGeoDataBaseDataset != null)
{
// Add the Name to the Array of Feature Class Names.
featureClassNames[arrayIndex] = currentGeoDataBaseDataset.BrowseName;
// Increment the Array Index.
arrayIndex++;
// Move to the Next Dataset in the Geodatabase Datasets Enumerator.
currentGeoDataBaseDataset = geodatabaseDatasets.Next();
}
// Return the Array of Feature Class names to the Calling Method.
return featureClassNames;
}
catch (System.Exception caught)
{
// Determine the Line Number from which the exception was thrown.
System.Diagnostics.StackTrace stackTrace = new System.Diagnostics.StackTrace(caught, true);
System.Diagnostics.StackFrame stackFrame = stackTrace.GetFrame(stackTrace.FrameCount - 1);
int lineNumber = stackFrame.GetFileLineNumber();
// Let the User know that this process failed.
if (ErrorMessage != null)
{
ErrorMessage("The MaintTools.FeatureClassUtilities.ListFeatureClassesInGeodatabase() Method failed with error message: " + caught.Message + " (Line: " + lineNumber.ToString() + ")!");
}
// Return NULL to the calling routine to indicate that this process failed.
return null;
}
finally
{
// If the Geodatabase Dataset Object has been Instantiated, close it.
if (currentGeoDataBaseDataset != null)
{
// Close the Geodatabase Dataset Object.
currentGeoDataBaseDataset = null;
//.........这里部分代码省略.........