第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

修改web.config時,如何防止ASP.NET應用程序重新啟動?

修改web.config時,如何防止ASP.NET應用程序重新啟動?

慕碼人2483693 2019-11-14 15:23:56
我通過該ApplicationHost.CreateApplicationHost方法托管ASP.NET運行時。當我web.config在應用程序運行時進行修改時,我發(fā)現(xiàn)ThreadAbortException拋出了很多第一次機會。這是在我的應用程序崩潰之前的正確時間。我認為這是因為運行時已檢測到配置更改,并希望重新啟動。對于我們來說,這實際上不是受支持的方案,因此,我希望可以關(guān)閉自動重裝功能。有誰知道如何做到這一點?
查看完整描述

3 回答

?
DIEA

TA貢獻1820條經(jīng)驗 獲得超2個贊

同樣,我遇到了一個更大的問題- 對AppDomain基本目錄中的任何文件或子文件夾進行更改都會導致托管環(huán)境關(guān)閉。對于我們的應用程序來說,這是一個很大的問題,因為我們在同一AppDomain中運行WPF UI,并且在不干擾用戶的情況下無法重新啟動它。


我真的想避免為應用程序的基于Web的部分運行單獨的AppDomain,所以我做了Reflector的挖掘工作。我發(fā)現(xiàn)罪魁禍首是內(nèi)部階級FileChangesMonitor。


所以我寫了一個可怕的可怕的反思黑客來解決這個問題。我以為我會將其發(fā)布在這里,作為其他有相同問題的潛在解決方案。您只需要致電HttpInternals.StopFileMonitoring()即可在文件/文件夾更改禁用關(guān)閉功能。


internal static class HttpInternals

{

    private static readonly FieldInfo s_TheRuntime = typeof(HttpRuntime).GetField("_theRuntime", BindingFlags.NonPublic | BindingFlags.Static);


    private static readonly FieldInfo s_FileChangesMonitor = typeof(HttpRuntime).GetField("_fcm", BindingFlags.NonPublic | BindingFlags.Instance);

    private static readonly MethodInfo s_FileChangesMonitorStop = s_FileChangesMonitor.FieldType.GetMethod("Stop", BindingFlags.NonPublic | BindingFlags.Instance);


    private static object HttpRuntime

    {

        get

        {

            return s_TheRuntime.GetValue(null);

        }

    }


    private static object FileChangesMonitor

    {

        get

        {

            return s_FileChangesMonitor.GetValue(HttpRuntime);

        }

    }


    public static void StopFileMonitoring()

    {

        s_FileChangesMonitorStop.Invoke(FileChangesMonitor, null);

    }

}


查看完整回答
反對 回復 2019-11-14
  • 3 回答
  • 0 關(guān)注
  • 674 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號