0

データベースから1つの整数を抽出しようとしていますが、エラーが発生します

コントローラの私のコードは次のとおりです。

        Dim SeqNumQuery = From a In db.RequestedServices
                          Where a.RequestedServiceId = id
                          Select a.StationId

        Dim StationId As Integer = SeqNumQuery.ToString

そしてエラーは次のとおりです。

範囲変数'StationId'は、囲んでいるブロック内の変数、またはクエリ式で以前に定義された範囲変数を非表示にします。

4

1 に答える 1

3

StationId問題は、変数が既に同じスコープ内のどこかで宣言されていることだと思います。次のように変更してみてください:

Dim SeqNumQuery = From a In db.RequestedServices
                          Where a.RequestedServiceId = id
                          Select a.StationId

StationId = SeqNumQuery.ToString

しかし、他の変数が何に使用されているかを調べてください。必要な場合はStationId、変数名以外の名前を使用してくださいRequestedServicesStationId

このエラーに関する詳細情報:

範囲変数は、外側のブロック内の変数、またはクエリ式で以前に定義された範囲変数を非表示にします。


.ToStringちなみに、拡張メソッドを使用している理由がわかりません。これによりスクリプトが例外をスローすることはありませんが、これを次のように変更することをお勧めしCInt()ます。

StationId = CInt(SeqNumQuery)
于 2012-08-15T13:41:09.977 に答える