代码描述人生

.NET 相关技术 (大坏蛋的blog)

博客园 首页 新随笔 联系 订阅 管理
  31 随笔 :: 4 文章 :: 70 评论 :: 51727 阅读

一个Assembly中所有的非公共类型,可以被它的【好友】Assembly访问。即如果AssemblyA中声明AssemblyB是它的好友Assembly,则AssemblyB可以像访问自身Assembly一样访问AssemblyA的私有类型。
将另一个Assembly声明成自己的Friend Assembly,需要使用一个InternalsVisibleToAttribute的特性。

[assembly:InternalsVisibleTo ("AssemblyB", PublicKeyToken="32ab4ba45e0a69a1")]

不过,声明Friend Assembly,代表允许AssemblyB访问自己的私有类型,但B不做逆向声明,A是不能访问B的私有类型的。跟现实生活一样。有的人你把他当朋友,什么秘密都告诉他,可人家没把你当朋友(开个玩笑,我身边没有)。
posted on   大坏蛋  阅读(1433)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示