C# - 指定友元程序集

前序:为了解决在程序集A中定义了受保护(internal)类型,然后需要在额别特殊的其他程序集B中正常访问,使用 InternalsVisibleToAttribute(String) 构造函数 实现。

准备:

namespace A :

internal class MClassA {}

namespace B

internal class MClassB

{

var v = new A.MClassA();

}

Step1:

创建AssemblyInfo.cs文件

在程序集A的代码根目录创建文件:Properties/AssemblyInfo.cs

Step2:

填充AssemblyInfo.cs文件内容:

复制代码
using System.Runtime.CompilerServices;

[assembly: InternalsVisibleTo("B")]

Step3:

在程序集B中即可正常访问

相关推荐
小陈工1 小时前
Python Web开发入门(十七):Vue.js与Python后端集成——让前后端真正“握手言和“
开发语言·前端·javascript·数据库·vue.js·人工智能·python
H Journey1 小时前
C++之 CMake、CMakeLists.txt、Makefile
开发语言·c++·makefile·cmake
rockey6274 小时前
AScript如何实现中文脚本引擎
c#·.net·script·eval·expression·function·动态脚本
lly2024065 小时前
C 标准库 - `<stdio.h>`
开发语言
沫璃染墨5 小时前
C++ string 从入门到精通:构造、迭代器、容量接口全解析
c语言·开发语言·c++
jwn9995 小时前
Laravel6.x核心特性全解析
开发语言·php·laravel
迷藏4945 小时前
**发散创新:基于Rust实现的开源合规权限管理框架设计与实践**在现代软件架构中,**权限控制(RBAC)** 已成为保障
java·开发语言·python·rust·开源
功德+n6 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
明日清晨6 小时前
python扫码登录dy
开发语言·python
我是唐青枫6 小时前
C#.NET gRPC 深入解析:Proto 定义、流式调用与服务间通信取舍
开发语言·c#·.net