《C#类设计手册》读书随笔(4)

简介:

Programmer To Programer 丛书
C# Class Design Handbook
Richard Conway, Teun Duynstee等著 
清华大学出版社


star.gif 代码组织和元数据

coffee.gif共享程序集 全局程序集缓存  Global Assembly Cache (GAC)

coffee.gif程序集 可重用的最小单元

coffee.gif元数据 为公共语言运行时提供了在运行期间加载类型和调用方法所需的所有信息
metadata 是元编程的基础,在很多系统中也是根本的东西,了解这个东西可以比较深入的了解某个架构

查看元数据最简单方法使用ildasm.exe /adv或/advancel选项

coffee.gif.NET模块是一个可移植、可执行(PE)格式文件

只有数据的模块  SDK包含一个工具Assembly Linker(AL.exe)
利用该工具将这些非MISL模块链接到程序集中

将该文件编译成模块,必须使用C#.NET命令行编译器
不能使用Visual Studio .NET 因为它总是创建单、程序集
例如:csc /target:module csMod.cs csMod.netmodule 
*.netmodule 是.NET的模块
增加模块到程序集清单中:
csc /addmodule: csMod.netmodule /addmodule:VBMod.netmodule MainMod.cs

star.gif程序部署
snail.gif部署单程序集应用程序比较简单,直接用xcopy部署。
snail.gif私有程序集部署应用程序也不复杂,将需要的程序集合放在同一个文件夹或者用应用程序配置文件通知CLR在什么位置查找程序集

snail.gif部署共享程序集
添加到GAC 全局程序集缓存
但Microsoft不推荐应用程序与GAC相互依赖,应尽量使用应用私有程序集部署方式

star.gif利用公有-私有密钥对可以为程序集创建强名称
编译期间编译器使用私钥,将相应的公钥写入程序集清单
sn (Strong Name)  sn \k *.snk
MSDN中查找"Keys crytography"查找相应内容
publickey 较长的数字
public key token 公钥令牌
sn \t *.snk

star.gif将共享程序集安装到GAC中
gacutil -i *.dll  需要管理员权限
或者在控制面板的管理工具中找 .NET FrameWork Configuration



本文转自风前絮~~博客园博客,原文链接:http://www.cnblogs.com/windsails/archive/2004/09/05/39837.html,如需转载请自行联系原作者


相关文章
|
11月前
|
数据可视化 项目管理 C++
|
10月前
|
存储 安全 网络协议
小白带你学习LinuxSSH服务(二十三)
小白带你学习LinuxSSH服务(二十三)
57 0
|
安全 Java 关系型数据库
Java开发手册黄山版新增规约摘录
Java开发手册黄山版新增规约摘录
1794 0
|
安全 Java 数据库
10分钟完成补充个人博客留言设计贴功能
10分钟完成补充个人博客留言设计贴功能
134 0
10分钟完成补充个人博客留言设计贴功能
|
算法 程序员
老外的个人网站原来是这样设计的:17个最佳范例给你灵感
作家写书,歌手出唱片,人们选择各种方式呈现最佳的自己。对于UI/UX设计师而言,我想,一个设计精美的个人网站,一定会是一种相当不错的方式。无论你是想要展示自己的设计作品,还是分享自己的设计经验和理念,还是吸引互动增加灵感,还是渴望获得一份更好的工作,一个能充分展示你设计才能的个人网站,一定能够让人更好的了解你,并且记住你。
1510 0
《如何有效阅读一本书》读书笔记
        这是一本关于读书的书,作者[日] 奥野宣之 ,行文上和众多看过的日本书类似,都是主题比较专一的,篇幅不大,语言语气也比较类似。书的副标题为“超实用笔记读书法”,笔记本贯穿了整本书。
944 0