c# - 如何比较两个 AssemblyName 实例?

标签 c# .net

如何比较两个 AssemblyName 实例以确定它们是否代表同一个程序集? “等于”方法未被覆盖。

我能想到的一种方法是比较两个实例的“ToString()”结果,但我更喜欢“等于”语法,因为我需要准备一个“唯一”AssemblyName 实例的列表 (List),并且希望使用“Contains(AssemblyName item)”方法。

最佳答案

只要您使用的是强命名程序集,比较 ToString method 的输出会很好,因为它输出程序集的全名,which is supposed to be consistent and seems to be culture-invariant .

如果程序集不是强命名的,那么可以很容易地创建另一个具有相同名称和版本号/区域性的程序集,并且它的程序集名称将与您的相同。

但要注意一件事,因为程序集名称相同并不意味着这些程序集具有相同的物理标识;位置不是程序集名称的一部分。

关于c# - 如何比较两个 AssemblyName 实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3459217/

相关文章:

c# - LOCALAPPDATA 中 File.ReadAllBytes 的 UnauthorizedAccessException "Access to the path is denied"

c# - 使用对象属性的 linq 获取 distinct 或 groupby 列表

java - SAP 行业特定解决方案的可定制性有多容易?

c# - 如何定义命名参数 C#

.net - 如何使用 XDocument.XPathEvaluate 处理空命名空间?

C# 从不同语言环境解析 int

c# - Web API Controller - 查询字符串中的 'action' 参数

c# - 使用 xamarin 在默认锁定屏幕上的 Android Activity

c# - .NET - 使用 "as"显式转换与 (someType)someobject 有何不同(在内部),为什么?

c# - 不需要 SSL 和客户端证书的 TCPClient 服务器与客户端的连接失败