vs2005发布站点生成随机的dll文件名的解决方案

原创 2007年10月09日 15:59:00

在Visual Studio 2003下开发网站的都知道ASP.NET 1.1网站生成后都是一个唯一命名的程序集(项目名

称.DLL),但是这种情况在Visual Studio 2005的网站开发中不见了。Visual Studio 2005给我们提供了

“发布网站”这样“方便”的功能,不用像以前一样COPY的部署,但是采用其“发布网站”的功能,会在

站点的BIN目录中产生App_Code.compiled,App_Code.dll,App_Web_xxxxxx.dll,项目名称.dll等等这样

的程序集,如果不采用预编译的方式那么产生的文件会更加的多,因为很多都是随机命名也没有什么规律

可言;这样会给那些想COPY更新的人带来不便,因为原来的文件不能被覆盖,需要先删除再COPY;有很多

时候可能就是更新了后台代码,直接生成项目或是WEB的程序集,像以前一样直接覆盖DLL的方式也很简单

下面将介绍我采用Microsoft Web Deployment Projects在Visual Studio 2005中生成唯一程序集的方法

先下载Microsoft Web Deployment Projects,地址是:
http://msdn2.microsoft.com/en-us/asp.net/aa336619.aspx

声明一下,我用的VS2005是Team suit版本的。

安装后在“生成”和WEB项目的上下文菜单看到“Add Web Deployment Project…”,好了,现在在解决

方案中点你的网站项目名称,右键,添加一个Web Deployment Project项目,起一个名称,这个名称就是

将来编译后生成的程序集名称,默认的名称“当前项目名称_deploy”(我的项目是Web_deploy),这样

操作后项目解决方案中会多一个项目Web_deploy,然后我们对Web_deploy进行操作就可以达到我们的目的

了。

右键打开Web_deploy项目的属性页面,察看“配置属性”,先看"Compilation"选项:

Compilation中的Output Folder设置项目输出路径,这个可以默认。
我们把Generate debug information和Allow this precompiled site to be updatable两项的对勾打上

Output Assemblies中的四大选项:
1. Merge all outputs to a single assembly-所有输出都编译成一个程序集(参数:程序集名称)
    1.1   Treat as library component (remove the App_Code.compiled file)-App_Code视为类库(

删除App_Code.compiled文件)

2. Merge each individual folder output to its own assembly-WEB项目中单独的目录会编译到一个

程序集中(参数:程序集前缀)

3. Merge all pages and control outputs to a single assembly-所有页面控件编译到一个程序集中

(参数:程序集名称)

4.  Create a separate assembly for each page and control output-为每一个页面和控件创建程序

集Signing使用key文件建立强命名空间的程序集

这里我们只需要设置“1. Merge all outputs to a single assembly-所有输出都编译成一个程序集(

参数:程序集名称)”(我设置的是Web_deploy)和“1.1  Treat as library component (remove the

App_Code.compiled file)-App_Code视为类库(删除App_Code.compiled文件)”(这个对勾要打上)。

这样,我们再把程序的页面继承关系改一下就可以发布网站了!举个例子:

网站中每个ASPX文件的PAGE我们这样改:
Index.aspx
<%@ page Language="C#" MasterpageFile="~/MasterPage.master" AutoEventWireup="true"

CodeFile="Index.aspx.cs" Inherits="wjj.Web.Index" Title="首页" %>
注意其中的Inherits="wjj.Web.Index",wjj.Web是我网站的我自己定义的命名空间。

Index.aspx.cs也要加上命名空间

namespace wjj.Web
{
    public partial class Index : System.Web.UI.Page
    {
               protected void Page_Load(object sender, EventArgs e)
        {

        }
     }
  }

好了,点项目Web_deploy右键---重新生成就可以了,终于把问题解决了!

Index.aspx生成后的PAGE如下:
<%@ page language="C#" masterpagefile="~/MasterPageDefault.master" autoeventwireup="true"

inherits="wjj.Web.Index, Web_deploy" title="首页" %>

 

随机生成文件名

根据需求需要,需要写一个随机文件名生成器,文件名不过是不能有重复的,因为做的是spark工程,输出路劲不能有重复,根据文件名的命名规则,开头为大写字母,结尾是数字,为了增加复杂性,引入了下划线“_”,...
  • he_min
  • he_min
  • 2016年09月01日 20:23
  • 1272

如何在Linux系统通过命令行生成随机文件

是否会有这样的场景:在有需要测试数据的时候,你不知如何生成一些已包含测试数据的文件;或者你是临时需要一个小的程序,可以让你生成不同大小的文件(比如大于1Mb少于100Mb),不需要从网络上去搜寻查找如...
  • tengxy_cloud
  • tengxy_cloud
  • 2016年08月26日 15:50
  • 2234

【Java】随机姓名的生成

在 http://www.oschina.net/code/snippet_54124_2566 的基础上进行了修改,没有使用拼音。 import java.util.Random; pu...
  • JiezhiG
  • JiezhiG
  • 2015年02月26日 12:52
  • 1845

游戏中的名字随机生成代码

{CSDN:CODE:dsf}
  • firebird321
  • firebird321
  • 2014年07月10日 17:52
  • 10802

C++程序员面试题 函数 生成随机密码 (二)

写一个函数,生成一个指定长度的密码。 要求:密码由大写字母、小写字母和数字三种符号组成,并且大写字母、小写字母和数字必须都有。 #include "stdafx.h" #include #incl...
  • A_sungirl
  • A_sungirl
  • 2013年08月29日 22:37
  • 1622

均匀的生成圆和三角形内的随机点

一、均匀生成圆内的随机点 我们知道生成矩形内的随机点比较容易,只要分别随机生成相应的横坐标和纵坐标,比如随机生成范围[-10,10]内横坐标x,随机生成范围[-20,20]内的纵坐标y,那么(x,y...
  • TingiBanDeQu
  • TingiBanDeQu
  • 2016年10月25日 16:21
  • 611

[原创]Loadrunner下载文件,并自动生成不重复的文件名

本文为本人原创,转载请注明文章出处和作者:Cheers.Lee     以前转载过一篇文章“如何让Loadrunner下载文件并保存在本地” ,这篇文章作为对那片文章的补充和深入,如有不足之处,欢迎大...
  • achang21
  • achang21
  • 2013年09月15日 10:17
  • 912

JAVA随机生成中文姓名,性别,Email,手机号,住址

这是一个测试类,直接复制粘贴改变包名就可以运行main方法 package com.liuzy.javaopen.test; import java.util.HashMap; ...
  • lzy1357986420
  • lzy1357986420
  • 2016年07月21日 20:24
  • 4850

python生成随机数组

研究排序问题的时候常常需要生成随机数组来验证自己排序算法的正确性和性能,今天把python生成随机数组的方法稍作总结,以备以后查看使用。...
  • healthy_coder
  • healthy_coder
  • 2016年01月12日 11:09
  • 14944

java 随机生成名字

为了测试延云YDB的大量数据秒级查询功能需要伪造大量的数据,这里分享下如何随机生成人名直接给出代码如下: public class Mytest1 { public sta...
  • shendefu
  • shendefu
  • 2016年11月04日 17:44
  • 4137
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:vs2005发布站点生成随机的dll文件名的解决方案
举报原因:
原因补充:

(最多只允许输入30个字)