Неявное указание размера int или явное? - PullRequest
0 голосов
/ 17 января 2010

В настоящее время мое приложение 32-битное.

Это означает, что все таблицы, работающие с идентификаторами SQL Server 2008, имеют значение INT, равное System.Int32, и везде, где я разбираю строки в целые числа, я использую Int32.TryParse().

Я назвал это Implicit int индикация размера.

Если я захочу сделать мое приложение 64-битным, я думаю, что будет 2 сценария:

  • Переименуйте все Int32 в Int64 и INT в BIGINT.

или

  • Переименуйте все Int32 в int СЕЙЧАС и сделайте указание размера int равным Explicit.

Что лучше, как вы думаете?

Ответы [ 2 ]

2 голосов
/ 17 января 2010

C # и SQL Server имеют фиксированный размер целых чисел на всех платформах.int в C # (это просто псевдоним для System.Int32 структуры) и SQL Server всегда 32-битный.Точно так же long в C # (псевдоним для структуры System.Int64 и SQL Server bigint всегда 64-битные независимо от платформы.

В C # более естественно использовать определенный псевдоним для типов типов(int вместо Int32, long вместо Int64) за исключением открытых имен методов (ReadInt64 предпочтительнее ReadLong), поскольку метод может использоваться в языке без псевдонимов или с псевдонимами другого типаи лучше использовать имя .NET Framework вместо псевдонима C #.

0 голосов
/ 17 января 2010

Нет необходимости изменять типы данных только потому, что вы перекомпилируете для 64-битной платформы

...