C#特征备忘

  1. [assembly:System.CLSCompliant(true)]----利用CLSCompliant属性,可以把程序集标记为与CLS兼容,但仍可以将个别方法的CLSCompliant值设为false,表示不兼容
  2. [assembly:AssemblyVersion("1.0.*")]----其中*表示内部版本号和修订号是自动生成的,内部版本号是自从2000年1月1日以来的天数,修订号表示自从当地时间午夜开始的秒数,在配置文件中,两者的最大有效数值为65535(如设置为99999则会配置文件失效)
  3. [assembly:InternalsVisibleTo("FriendAssemblies2")]----在FriendAssemblies1中加上此特性,可允许FriendAssemblies2程序集访问FriendAssemblies1程序集中的内部(internal)成员。注意,必须显式指定输出文件的名称 (/out:FriendAssemblies2.exe)。
  4. [assembly:InternalsVisibleTo("cs_friend_assemblies_4, PublicKey=002...)]----同上,多了个公钥,两个程序集都使用密钥。
  5. [assembly:UIPermissionAttribute(SecurityAction.RequestMinimum,Unrestricted=true)]----程序集的最小权限,请求赋予应用程序访问用户界面的权限。
  6. [assembly: FileIOPermissionAttribute(SecurityAction.RequestRefuse,Read="C:\\")]------程序集的拒绝权限,请求拒绝访问C盘及其子目录。
  7. [assembly: SecurityPermissionAttribute(SecurityAction.RequestOptional, Flags=SecurityPermissionFlag.UnmanagedCode)]----程序集的可选权限,请求赋予程序集访问非托管代码的权限。
  8. [assembly:PermissionSetAttribute(SecurityAction.RequestMinimum,Name="FullTrust")]----请求内置的程序集FullTrust,只能请求不能修改的权限集,所以不能请求Everything权限集,因为它在程序集运行时可通过安全策略来改变。
  9. [FileIOPermission(SecurityAction.Assert,Read=@"C:\")]----声明的安全性,声明指定权限需求。使用声明安全性的最大好处是通过反射可以访问设置信息。
  10.  [PrincipalPermissionAttribute(SecurityAction.Demand, Role = "BUILTIN\\Users")]----基于角色的权限
posted @   长白山  阅读(253)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
点击右上角即可分享
微信分享提示