2013-05-02 66 views
0

我目前正在使用的代碼的Web服務器控件下面一行去加載的System.Web程序集的引用System.Web程序集引用:安全的方式來獲得

var assembly = AppDomain.CurrentDomain.GetAssemblies() 
        .Single(i => i.FullName.Contains("System.Web,")); 

我有點擔心可能會出現Single方法調用失敗的情況,因爲(1)找不到程序集,或者(2)返回多個程序集。在調試器中,它看起來像只有一個程序集匹配選擇器(我在System.Web之後包含逗號,因爲其他所有人都顯示爲「System.Web.Whatever」),但這並不意味着加載的所有程序集的FullName將永遠不會包含此文本)。

是否有更好的方法來識別我正在尋找的引用,所以我知道它會始終正確地找到它?

謝謝。

+0

一開始,你可以使用「StartsWith」,而不是「包含」 – joshuahealy 2013-05-02 01:15:59

回答

3

,最好的辦法是使用你知道是在System.Web程序集一個類型,例如:

var assembly = typeof(System.Web.HttpContext).Assembly; 
+0

愛這個!完美的作品,更加優雅。 – kad81 2013-05-02 07:49:17

相關問題