0
以下のコードはコンパイルされません。PDM
が宣言されていないというエラーメッセージが表示されます。私はvb.netからSQL Serverストアドプロシージャを呼び出そうとしていますが、私が見つけた同様の例と一致するコードがあります。 PDM
の部分が私のために機能しないのはなぜですか?"PDM"がSqlClient.SqlDataReaderのクラスとして宣言されていません
Public Function ReturnPointSource(ByVal PlantName)
Dim TempList = New ArrayList
Dim sqlDR As SqlClient.SqlDataReader = PDM.Data.SqlHelper.ExecuteReader(GLOBALS.ConnectionString, "sp_readLocation")
If sqlDR.HasRows Then
While sqlDR.Read()
Dim Loc As New Location
Loc.strFID = sqlDR(0)
Loc.strFeature = sqlDR(1).ToString
Loc.intPlantNo = sqlDR(2).ToString
Loc.strPlantName = sqlDR(3).ToString
Loc.strMunicipality = sqlDR(4).ToString
Loc.strRegion = sqlDR(5).ToString
Loc.strOperator = sqlDR(6).ToString
Loc.strDistrict = sqlDR(7).ToString
Loc.strWatercourse = sqlDR(8).ToString
Loc.dblCapacity = sqlDR(9).ToString
Loc.dblPopulation = sqlDR(10).ToString
Loc.strOwnership = sqlDR(11).ToString
Loc.strOwnerClass = sqlDR(12).ToString
Loc.strCofNum = sqlDR(13).ToString
Loc.strComments = sqlDR(14).ToString
Loc.dblLatitude = sqlDR(15).ToString
Loc.dblLongitude = sqlDR(16).ToString
Loc.strSource_Point = sqlDR(17).ToString
Loc.intSeverity = sqlDR(18).ToString
Loc.dblSafe_buffer_distance_m = sqlDR(19).ToString
TempList.Add(Loc)
End While
End If
Return TempList
End Function
サイドノート:**あなたのストアドプロシージャのプレフィックス 'sp_'を使用しないでください**。マイクロソフトは、[*ストアドプロシージャの名前付け*を参照してください](http://msdn.microsoft.com/en-us/library/ms190669%28v=sql.105%29.aspx)、およびあなたはいつか名前衝突のリスクを将来実行します。 [ストアドプロシージャのパフォーマンスにも悪い](http://www.sqlperformance.com/2012/10/t-sql-queries/sp_prefix)単に 'sp_'を避け、他の何かを接頭辞として使うのが最善です - 接頭辞はまったくありません! –