zoukankan      html  css  js  c++  java
  • 程序集版本控制

    版本组成: 主版本号.次版本号.构建次数.修订号 四部分组成,

    <major version>.<minor version>.<build number>.<revision>,

    [assembly: AssemblyVersion("2.1.*")]

    版本号在强名称程序集中才能显示出它的唯一性控制的,以下都是针对 强名称程序集 来阐述的。

    程序集重定向:

    1、应用程序级别:通过配置文件app.config/web.config中设置重定向元素

    VersionRedirect

    2、机器范围级别:于machine.config中(${.NET Install Path}\Config\Machine.config),

        找到<runtime>元素节点中,进行版本重定向控制。

    C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\mscorcfg.msc .NET框架配置工具

    3、发布者策略:不同于1、2中的配置文件,它是程序集本身,其原理如下:不通过修改

    app/web.config/machine.confg,而通过发布到GAC中的版本策略(一程序集),改变调用的

    程序集的新的定向,其命名约定:policy.<major version>.<minor version>.<assemblyName>

    举例:设MathLibrary.dll强名称程序集存在2版本: 1.1.2.2 和 1.1.3.3,

    1、编辑策略文件 publisherpolicy.xml 

    publisherpolicy.xml

    2、生成策略程序集,使用al命令(C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\al.exe)

    al /link:publisherpolicy.xml /out:policy.1.1.MathLibrary.dll /keyf:http://www.cnblogs.com/../myKey.snk /v:1.0.0.0

    3、安装1.1.3.3版本的A.dll & policy.1.1.MathLibrary.dll 到GAC中。

    此后所有对1.1.2.2的请求都会被转至1.1.3.3版本的MathLibrary上。

    codeBase: codeBase所指定位置范围的有效性,于普通/强名称程序集的区别,可参见 私有程序集探测 一节中

    的描述,这里仅demo之以明用法,如上发布者策略中,可通过修改publisherpolicy.xml文件来重定向

    publisherpolicy.xml

    策略优先级别:

    应用配置文件(app.confg/web.config)、发布者策略文件、机器配置文件(高->低)

    关闭发布者策略: 可通过设置在应用配置文件中关闭发布者策略(注意:是应用程序配置文件中,

    因为有优先级关系),可配置为应用程序范围级别的和某个具体的程序集范围的。如下:

    应用程序范围级别
    程序集级别
  • 相关阅读:
    reids 数据库学习
    java 8 学习二(Lambda表达式)
    java 8 学习一(概述)
    update Select 从查询的结果中更新表
    从一段文字中提取出uri信息
    Hadoop3.0磁盘均衡器
    MapReduce 程序mysql JDBC驱动类找不到原因及学习hadoop写入数据到Mysql数据库的方法
    yarn计算一个节点容量及其配置项
    YARN的capacity调度器主要配置分析
    1084 Broken Keyboard (20 分)字符串
  • 原文地址:https://www.cnblogs.com/FallingAutumn/p/1254244.html
Copyright © 2011-2022 走看看