是否可以從引用的程序集中獲取ASP.NET Web應用程序的程序集名稱?獲取Web應用程序程序集名稱,無論當前正在執行的程序集
Assembly.GetEntryAssembly在桌面和控制檯應用程序中運行良好,但它似乎在Web應用程序中始終爲空,並且GetExecuting \ GetCallingAssebly返回我引用的程序集,而不是Web應用程序中的程序集。
朗解釋:
我寫了一個定製Settings Provider,即而不是從應用程序配置文件讀取配置,它從一個集中的配置服務獲取的設置。
自定義提供程序位於單獨的程序集中,因此它可以被不同的應用程序使用。
ApplicationName屬性需要用應用程序程序集名稱重寫。
使用提供者的方法是通過.net custom attribute,所以我不能發送任何參數給它。
由於Assembly.Get * Assembly方法看起來不起作用,我能想到的唯一一件事情就是需要appSetting和web應用程序的應用程序名稱,但我對此並不滿意。任何幫助表示讚賞,謝謝!
我得到「在應用程序的預啓動初始化階段不能調用此方法。」嘗試在ASP.NET MVC中使用此方法時出錯。 – Tomas
這會爲我返回「mscorlib」。 – Slavo
如果您的項目中沒有包含Global.asax文件,則這不起作用。 – Slavo