2017-06-19 12 views
0

私のウェブアプリケーションでXslCompiledTransformerを使用しています。残念ながら、これは最新の.NETアップデート、バージョン4.7では動作しなくなりました。IISで.NET 4.6または4.5.xまたはそれ以降を使用する方法

(私はthis issueを抱えている)私は、Microsoftが迅速な解決策を考え出すことを願っていますが、その間に私は、.NET 4.6を使用して実行するように自分のアプリケーションを強制したいです。

これは、私はすでに試したものです:.NET 4.6/4.5

感謝するwebアプリケーションプロジェクトのターゲットフレームワークを設定し、web.configファイル内

  • supportedRuntimeタグ
  • あなたの答えはあなたです!

+2

4.7は、4.x行の*インプレース更新*です。この作業を行うには、サーバーから4.7をアンインストールする必要があります。 –

+0

残念ながら、これはオプションではありません。なぜなら、アプリケーションは多くの顧客に公開されているからです。私たちは、.NET Framework 4.7を各自でアンインストールすることはできません。 –

+0

私が代わりに回避策として、 'XslCompiledTransformer'の' XslTransformer'を使用するようになりました私たちのソフトウェアのアップデートを作成していますが、それは、性能、したがって、好ましくない –

答えて

2

あなたは4.7 JITで末尾再帰の除去のバグに実行されています。この問題を回避するには、環境変数COMPlus_TailCallLoopOptを0に設定するか、HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft.NETFrameworkまたはHKEY_CURRENT_USER \ SOFTWARE \ Microsoft.NETFrameworkの下にあるTailCallLoopOptというDWORD値を作成し、0に設定します。

+0

*どこか*これを設定しますか?コンパイラオプションですか? 'web.config'に追加する設定ですか?レジストリ設定?他に何か? –

+0

これは環境変数です。また、Microsoft \ .NETFrameworkまたはHKEY_CURRENT_USER \ SOFTWARE \マイクロソフト\ .NETFrameworkの下のHKEY_LOCAL_MACHINE \ SOFTWARE \下TailCallLoopOptという名前のDWORD値としてレジストリに0に設定することができます。 –

+1

**あなたの回答を編集**してください。この情報を含めてください。追加情報へのリンクがあればそれを含めてください。あなたの答えはそれだけでは、あなたがすでに話しているものを正確に知りません。 –

関連する問題