0

我目前在 Web 服务器控件中使用以下代码行来获取对加载的 System.Web 程序集的引用:

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

我有点担心有时 Single 方法调用会失败,因为 (1) 找不到程序集,或者 (2) 返回了多个程序集。在调试器中,看起来只有一个程序集与选择器匹配(我在 System.Web 之后包含了逗号,因为所有其他程序集都显示为“System.Web.Whatever”),但这并不意味着加载的所有程序集的 FullName 永远不会包含此文本)。

有没有更好的方法来识别我正在寻找的参考,所以我知道它总是能正确找到它?

谢谢。

4

1 回答 1

3

最好的方法是使用您知道 System.Web 程序集中的类型,例如:

var assembly = typeof(System.Web.HttpContext).Assembly;
于 2013-05-02T01:18:51.003 回答