在
aspx->cs->dll這篇post中我向大家介紹了通過aspx生成cs并編譯成dll的方法,浪漫十一狼對這個技巧的一個應(yīng)用(無aspx部署)向我提問,我在這里向大家詳細(xì)介紹一下。
通過上篇post大家已經(jīng)知道了如何獲取aspx生成的dll文件,我們只要再作兩步工作,就可以實現(xiàn)無aspx部署了:
1、把生成的全部dll文件拷貝到項目的bin目錄下;
2、在web.config中加入類似下面的配置節(jié)聲明
<httpHandlers>
<add verb="*" path="WebForm1.aspx" type="ASP.WebForm1_aspx, srqmg4mo" />
</httpHandlers>
其中,
srqmg4mo是生成的dll的程序集名稱,我們得到的dll文件名和程序集名稱相同;
ASP.WebForm1_aspx是命名空間,統(tǒng)一為ASP.aspxFileName_aspx格式;
WebForm1.aspx是我們要處理的aspx文件名
做完這兩步之后,就可以把所有的aspx都刪掉了
在我的
無aspx文件部署這篇post中,介紹了如何在部署ASP.NET項目的時候,去除aspx文件。當(dāng)時我使用的是.net1.1?,F(xiàn)在,在.net2.0中,ms對該特性提供了直接支持。只要運(yùn)行下面的命令即可:
aspnet_compiler -v virtualPath targetPath
運(yùn)行上述命令后,目標(biāo)目錄下生成了一個bin文件夾,以及asp.net項目中的aspx文件等。使用ildasm查看如下圖所示:
aspx文件Default.aspx、Default2.aspx以及Default3.aspx被編譯到了dll中。這就意味著,可以在部署的時候,把所有aspx文件刪掉,它們都不是必要的
。