add featureclass from geodatabase featuredataset

Discussion created by thaluska on Feb 8, 2011
Latest reply on Feb 9, 2011 by thaluska
I'm new to vb and dotnet. I'm running arcgis 10. I think I am close but need help finishing my procedure below. The code below works up to the point where I have the message box.  The error I get is "Unable to cast COM object of type 'System.__ComObject" to interface type 'ESRI.ArcGIS.Carto.IFeatureLayer'" I've tried several variations on the last few lines but can't figure it out.  I'm inexperienced in casting, which I think is what I need to do here. Any help is appreciated.  I just want to add the featureclass that is inside the geodatabase featuredataset to the map document.

Private Sub LoadInundationLayers()
        Dim pMxDoc As IMxDocument = DirectCast(m_app.document, IMxDocument)
        Dim pMap As IMap = pMxDoc.FocusMap
        Dim pFLayer As ESRI.ArcGIS.Carto.IFeatureLayer
        Dim pWSFactory As ESRI.ArcGIS.Geodatabase.IWorkspaceFactory = New FileGDBWorkspaceFactory
        Dim pFWS As ESRI.ArcGIS.Geodatabase.IFeatureWorkspace
        Dim pFDSet As ESRI.ArcGIS.Geodatabase.IFeatureDataset
        Dim pFCContainer As ESRI.ArcGIS.Geodatabase.IFeatureClassContainer
        Dim pFClass As ESRI.ArcGIS.Geodatabase.IFeatureClass
        Dim intParcNum As Integer = 9
        intInundationStage = 413000
        Dim strGDBName As String = strDefaultWorkspace & "\Processed_Data\ShorelineManagementTool_" & frmScenSet.lblVertDatStage.Text & ".gdb"
        Dim strFDSetName As String = "InundationAreasParcel_" & intParcNum
        Dim strFClassName As String = "p" & intParcNum & intInundationStage & "_polygon"
            pFWS = pWSFactory.OpenFromFile(strGDBName, 0)
            pFDSet = pFWS.OpenFeatureDataset(strFDSetName)
            pFCContainer = CType(pFDSet, ESRI.ArcGIS.Geodatabase.IFeatureClassContainer)
            pFClass = pFCContainer.ClassByName(strFClassName)
            MsgBox("code works up to here")
            pFLayer = pFClass
        Catch ex As Exception
        End Try
    End Sub