none
TransactionScopeのMaxTimeoutについて RRS feed

  • 質問

  • PostgreSQLに接続し、TransactionScopeでトランザクションの管理を行うため、検証用のプログラムを作成し、色々と試している最中です。

    当初、.Net Framework4.7.2で検証し、machine.configに記述された、MaxTimeoutの値が、TransactionManager.MaximumTimeoutに反映されることを確認しました。

    しかし、dotNet Core 2.1の環境でTransactionManager.MaximumTimeoutを確認したところ、machine.configの設定内容が反映されませんでした。

    検証で使用したのは、以下のコードになります。
            static void Main(string[] args)
            {
                Console.WriteLine(string.Format("MaximumTimeout = {0}", TransactionManager.MaximumTimeout));
            }
    


    dotNet Coreで、MaxTimeoutの値を変更するには、どのようにすれば良いのでしょうか?

    個人的には、System.Configuration.ConfigurationSection.MachineSettingsSectionクラスの適用対象が.Net Frameworkは記述されていますが、dotNet Coreの記述がないのがとても気になっています…。

    以上、よろしくお願いします。
    2019年4月5日 14:37

すべての返信

  • BlueFreedさん、こんにちは。フォーラムオペレーターのHarukaです。
    MSDNフォーラムにご投稿くださいましてありがとうございます。

    MSDNの文書によると、
    TransactionManager.MaximumTimeoutの値は設定ファイルのMachineSettingsSectionで設定できます。 
    しかし、MachineSettingsSectionは.net Coreをサポートしません。

    https://docs.microsoft.com/ja-jp/dotnet/api/system.transactions.configuration.machinesettingssection?view=netframework-4.7.2

    上記の情報はお役に立てば幸いです。

    どうぞよろしくお願いします。


    MSDN/ TechNet Community Support Haruka

    ~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、
    ご協力くださいますようお願いいたします。また、MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。~

    2019年4月8日 8:52
    モデレータ