我们知道一般开发组件之后,组件都有相关配置项,最常见的作法就是把它写到web.config里,而如果你将这个文件直接放到nuget里打包,在进行安装包包时,会提示你这个文件已经存在,不能去覆盖原来的config文件,这时,我们只能将配置信息写到别一个文本文件里,而使用者在安装包包后,还要手动将信息拷贝到自己的config文件,确实挺无奈的,没人愿意干这种重复的活!

解决这种现状

使用web.config.transform文件,将自己个性的信息写在里面,它将自动合并到现有config文件中

例如Microsoft.AspNet.WebApi.Core也有这个文件,Nuget如图

aaarticlea/png;base64,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" alt="" />

内容如下

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
<remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="" />
<add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
</system.webServer>
</configuration>

当我们建立VS api项目之后,它会自动从nuget服务器上下载包包,并将config文件与本地的文件合并,确实觉得挺实用的,也彻底告别了我们的复制的工作,呵呵!

Nuget~让包包带上自己的配置信息的更多相关文章

  1. Mantis1.2.19 在Windows 平台上的安装配置详解

    安装环境: WindowsXP 32 Apache2.2.22+PHP5.4.39+MySQL5.5.28 一.简介 MantisBT是由PHP开发的.基于WEB的缺陷跟踪系统,并采用开源数据库MyS ...

  2. 在 CentOS 上安装和配置 OpenNebula

    转自:http://www.aikaiyuan.com/4889.html 我们提到的云计算一般有三种类型:软件即服务(Software as a Service, SaaS),平台即服务(Platf ...

  3. Oracle 12cR1 RAC 在VMware Workstation上安装(上)—OS环境配置

    Oracle 12cR1 RAC 在VMware Workstation上安装(上)-OS环境配置 1.1  整体规划部分 1.1.1  所需软件介绍 Oracle RAC不支持异构平台.在同一个集群 ...

  4. NuGet:自定义配置信息(2)

    有些类库项目打包后,如何让别人引用的时候自动添加上对应的配置项目呢,比如EntityFramework的NuGet包,打开后可以看到类似下面的结构: 空白处右击——Add Content Folder ...

  5. mac上php+nginx配置

    brew的安装: ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)”php安装和配置bre ...

  6. 图文介绍openLDAP在windows上的安装配置

    目录 概述 测试环境 安装过程 配置启动 客户端介绍 多级DC的ldif文件的配置 [一].概述 什么叫LDAP呢,概念的东西这里就不多讲了,网上搜索下有很多,本文的重点是介绍如何在windows平台 ...

  7. IDEA上tomcat的配置

    IDEA上tomcat的配置   IDEA上集成自己的tomcat,主要就是下面这张表的配置,不累述.

  8. Asp.net Core dotnet 发布类库文件 带上注释,发布预发行版,带上所有引用

    带上注释 效果图 带上所有引用 效果图 预发行版 效果图 由于微软取消了  project.json  这个json 转而用了csproj 用于保存配置 所以懵逼很大一会 资料来源 project.j ...

  9. 解决asp.net web api时间datetime自动带上带上的T和毫秒的问题

    今天用asp.net web api写微信小程序的接口时遇到一个问题. 返回的model中的datetime类型的字段自动转换成了“2014-11-08T01:50:06:234”这样的字符串,带上的 ...

随机推荐

  1. bzoj3931: [CQOI2015]网络吞吐量

    将最短路图找出来,跑maxflow即可.有注意到数据范围.然后输出的时候%dWA了三次QAQ... #include<cstdio> #include<cstring> #in ...

  2. [转:CSS3-前端] CSS3发光和多种图片处理

    原文链接:http://www.qianduan.net/css3-image-styles.html 一些上流的CSS3图片样式 神飞 发表于 24. Sep, 2011, 分类: CSS , 46 ...

  3. kendo ui grid控件在选择行时如何取得所选行的某一列数据

    $("#grid").kendoGrid({ dataSource: dataSrc, columns: [ { template: '#=material_id#', width ...

  4. 【WEB】jsp向servlet传参中文乱码问题解决

    传参方式:POST.GET.link方式 servlet向jsp传中文参数msg if(username.equals("") || password.euqals("& ...

  5. 【转 iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束

    原文网址:http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式 ...

  6. HTTP请求中浏览器缓存

    本文导读:浏览器缓存机制,其实主要就是HTTP协议定义的缓存机制.客户端缓存是否需要是可以在服务端代码上控制的.那就是响应头.响应头告诉缓存器不要保留缓存,缓存器就不会缓存相应内容:如果请求信息是需要 ...

  7. Log4NET简介

    log4net库是Apache log4j框架在Microsoft .NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台.文件.数据库等)的工具. 前提 最近做项目需要记录系统日志和用 ...

  8. T-SQL 常用语句学习

    一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server ---  ...

  9. 通过gdb调试分析Linux内核的启动过程

    作者:吴乐 山东师范大学 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.实验流程 1.打开环境 执 ...

  10. asp.net MVC 安全性[笔记]

    1. 跨站脚本(XSS) 1.1 介绍 1.1.1 被动注入,利用输入html,javascript 等信息伪造链接,图片等使用提交信息,调转页面等 1.1.2 主动注入,黑客主动参与攻击,不会傻等倒 ...