2

ReSharper はこれを変更したいと考えています。

platypusID = DuckbillValues[i - 1].ToString();

..これに:

platypusID = DuckbillValues[i - 1].ToString(CultureInfo.InvariantCulture);

私のアプリが米国でのみ使用される可能性が高いため、次のうちどれを黙認しますか?

1) Smart
2) Dumb
3) Neither smart nor dumb
4) Smart, but not for that reason
5) Dumb, but not for that reason
4

1 に答える 1

6

私のアプリが米国でのみ使用される可能性が高いため

アプリが米国でのみ使用されている場合でも、多数のユーザーをターゲットにしている場合、ユーザーが地域設定をカスタマイズしたり、別の地域を使用してシステムをセットアップしたりする可能性は常にあります。

InvariantCultureユーザーが何をしても安全に使用できます。これが「id」を設定していることを考えると、個人的には、InvariantCulture後で奇妙な結果が得られないことを保証するために、文化を強制する可能性が最も高いでしょう。

これにより、将来的に他の地域をサポートすることも容易になります...このアプリケーションであろうと他の地域であろうと、後でコードがどうなるかはわかりません。

また、ReSharper を使用しているため、これについてはすでに警告されています。あなたはすでにそこにいます。実際には、警告を無視するよりも適切なコーディング標準に準拠する方が簡単です。そのため、カルチャを指定しない理由を考えるのが難しくなります。

于 2012-06-07T21:50:31.227 に答える