静的クラスで公開されている定数の値を変更して、アセンブリの古いコピーを新しくコンパイルしたバージョンに置き換えたとき、私は今や少し驚いています。驚いたことに、アセンブリを参照していた既存のプログラムが定数の新しい値を取得していないということでした。つまり、私は実行可能ファイルを再コンパイルしませんでしたが、むしろその1つのアセンブリを置き換えました。.NETでは、定数はJIT時ではなくコンパイル時に評価されるのはなぜですか?
私の実験の完全な説明は、私がこの動作により、非常に驚いているに認めるよHow constant is a constant?
です。私は何が起こっているのか理解していますが、私は理解していませんなぜ。コンパイル時ではなく、JIT時に定数を取得できないという特別な技術的な理由はありますか?それをすることで事態が壊れるケースはありますか?
を、それは実際にそれは驚くべきことではないので、これは、あまりにも多くの書籍、ブログの記事で説明された動作です:) –
@Lex:奇妙なことに、私は以前はそれについて議論したことはありません。私はまだ疑問に思っています。 –
私はまだ使用しているアセンブリにそれを焼くことの利点が何であるか分かりません。 – CodesInChaos