2016-12-27 8 views
0

文字列をIntに変換する必要があり、問題があるため解決策が見つからないのですが、他の2つは良好に動作します。スクリーンショットから分かるようString to Int変換に関する問題

enter image description here

、文字列値"2778"2778をintに変換されるが、私は、デバッグモードで継続するとき、my_id_int変数も明らか0x00000adaとセッション変数に等しいです。私はすでにInt.Parseメソッドを使用して試してみましたか、またはASPxGridViewカラムのInt値をそのまま使用してください。他のマシンでは常にうまく動作します。たぶん、Visual Studioやそれに類する設定があります。

更新

これは視覚的な問題、私は別のページでセッション値を取得するとき、私はint型の値を使用してクエリを実行する必要がありますが、期待どおりに動作しないだけではありません。

int my_id = (Int32)Session[SESSION_ID_INTERNO_KEY]; 
// valorized as 0x00000b09 

string sql = " select * from table where id = @my_id "; 
... 
は、デバッグモードで
+5

'0x00000ada'は' 2778'の16進なので、プログラムが正しく動作します。 – Renzo

+0

どのようなエラーが表示されますか? –

+1

'0xada'は2778です。それは16進形式で表示されるデバッガです。デバッガは表示中にそのような番号をフォーマットするだけですが、同じ値を持っています。デバッガが16進数で表示されているのが好きでない場合は、オフにしてください – vcsjones

答えて

4

チェックを外し進表示:

enter image description here

+1

ありがとうございますが、なぜ今すぐ動作するのか理解できません。これは表示オプションに過ぎず、プログラムの動作を変更すべきではありません。 16進表示を無効にすると、int値が表示され、クエリがデータを正しく取得できます。私は16進表示モデルを有効にしている間、それはしない:/ – lubilis

関連する問題