Hi Vijay,
You can use the GetDefinitions (ArcGIS Pro 1.2 API Reference Guide) method instead. The Definition is a much lighter weight construct which does not open the feature class. One more thing to remember is that getting the TableDefinitions will not give you the FeatureClassDefinitions.
Try the following code out. It uses the LINQ syntax for more concise code.
string featureClassName = AppConstants.ExportProposedBuildingName;
IReadOnlyList<string> valueArray = null;
await QueuedTask.Run(() =>
{
Geodatabase fileGeodatabase = new Geodatabase(@"c:\0_Projects\CapeCodCommission\CapeCod.gdb");
List<Definition> definitions = new List<Definition>();
definitions.AddRange(fileGeodatabase.GetDefinitions<TableDefinition>());
definitions.AddRange(fileGeodatabase.GetDefinitions<FeatureClassDefinition>());
int index = 0;
while(definitions.Any(definition => definition.GetName().Equals(featureClassName)))
featureClassName = AppConstants.ExportProposedBuildingName + "_" + ++index;
valueArray = Geoprocessing.MakeValueArray
(proposedBuildingLayer, @"C:\0_Projects\CapeCodCommission\CapeCod.gdb\" + featureClassName);
});
-Sree