为什么未记录GAC文件夹结构?
我正在阅读通过C#通过CLR,在这本书中指出:
CSC.exe不在GAC中查找引用程序集的原因是,您必须知道程序集文件的路径,并且GAC的结构未记录。
我不明白在创建规则和为GAC文件夹结构记录规则方面有哪些障碍。
UPDATE在评论中,建议可能存在一个技术问题,该问题不允许实施文件夹结构的规则。但我可以通过提供可能规则的示例来证明并非如此:
1 GAC只能包含全名的程序集。2根据定义,重命名的程序集是一个具有名称,版本号,区域性和公共密钥令牌(实际上是公共密钥,但是我们可以使用该令牌的方法,因为公共密钥太长了)。1 2-> 3每个程序集都可以通过名称,版本,区域性和公共密钥令牌来唯一标识。3-> 4如果使用以下文件夹结构规则,则将满足提供所需文件夹结构规则的最初目标:[名称] / [版本] / [文化] / [公钥令牌] / [程序集本身]
我在这里想念东西吗?
。NET初始标准文档仅定义GAC的功能,但不限制其实施。因此,
最重要的是,.NET Core甚至没有GAC。
因此,C#编译器不能依赖GAC的参考搜索算法实现。