0


0

暗黙的なintサイズの表示または明示的な?

現在、私のアプリケーションは32ビットです。

これは、SQL Server 2008 IDで実行されるすべてのテーブルが「System.Int32」に等しい「INT」であり、文字列を整数に解析するすべての場所で「Int32.TryParse()」を使用することを意味します。

これを「暗黙的な」intサイズ表示と呼びました。

アプリケーションを64ビットにしたい場合、2つのシナリオがあると思います。

  • すべての「Int32」の名前を「Int64」に、「INT」の名前を「BIGINT」に変更します。

or

  • すべての Int32`の名前を int` NOWに変更し、intサイズの表示を 「明示的」。

どちらが良いですか、どう思いますか?

2 Answer


2


C#とSQL Serverは、すべてのプラットフォームで整数のサイズが固定されています。 C#の int(単なる` System.Int32`構造のエイリアス)とSQL Serverは常に32ビットです。 同様に、C#の「long」(「System.Int64」構造のエイリアスとSQL Serverの「bigint」は、プラットフォームに関係なく常に64ビットです。

C#では、パブリックメソッド名(「ReadLong」よりも「ReadInt64」の方が望ましい)を除き、型に言語定義されたエイリアス(「Int32」の代わりに「int」、「Int64」の代わりに「long」)を使用する方が自然ですこのメソッドは、異なるタイプエイリアスの有無にかかわらず言語で使用される場合があり、C#エイリアスの代わりに.NET Framework名を使用することをお勧めします。


0


64ビットプラットフォーム用に再コンパイルしているという理由だけで、データ型を変更する必要はありません。