私の解決方法ではdecimal.ToString()
へのすべての呼び出しを受け取りたいと思います。 コンパイル時。(「オリジナル」と記されている質問は、実行時の解決策です)コンパイル時にdecimal.ToStringを呼び出す
これは何か手掛かりはありますか? ToString
のオーバーロードとObsoleteAttribute
を使用していますか?
thisのようなコードでスキャンを(リフレクションで)1週間に1回実行するか、静的コードチェックを使用して何らかの種類のプログラムをインストールして設定することができます。しかし、この質問はコンパイル時です。
この理由は、decimal.ToString
がカルチャーを認識しており、私の場合は問題になる可能性があるためです。すなわち、誰かがローカライズされたサーバにソリューションをインストールした場合、出力が変わる可能性があります。
decimal.ToString
にはCultureInvariant
を付けずに呼び出さないというルールがありますが、常に尊敬されるわけではありません。
Roslynアナライザーを作成することができます。 – SLaks
コードを(カスタムルールの定義を含めて)コーディング標準と照合できるようにする静的解析ツールがあります。そうすれば、一度にすべてのルールに対してコードをチェックすることができます。 – EJoshuaS
@BartoszKPコンパイル時にリラックスして週に1回ツールを実行すると、かなり近づいて問題が解決するかもしれません。どうも。 – LosManos