預編譯網站是什麼
預編譯又稱為預處理,是做些代碼文本的替換工作。處理#開頭的指令,比如拷貝#include包含的文件代碼,#define宏定義的替換,條件編譯等,就是為編譯做的預備工作的階段主要處理#開始的預編譯指令。
編譯(compilation , compile)
1、利用編譯程序從源語言編寫的源程序產生目標程序的過程。
2、用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言,計算機只認識1和0,編譯程序把人們熟悉的語言換成2進制的。
更多Python知識請關注Python視頻教程欄目。
Ⅱ c# web項目發布的問題
發布網站,也就是對網站進行預編譯.
網站的發布之後, app_code目錄下的.cs文件以及.aspx頁面對應的.aspx.cs文件都會被編譯成dll文件,保存在bin目錄下.
之所以叫預編譯,是因為即使沒有發布而直接上傳源代碼,網站在被訪問的時候也是要先進行編譯才能運行的,這一切都是自動完成的,需要一定的時間,所以一般網站第一次啟動時會比較慢.
預編譯就是事先完成這一編譯工作了,訪問網站時就不用再編譯,一定程度上提高了網站的性能.
如果發布後修改了app_code下的代碼,只需要替換編譯後的bin\app_code.dll即可. 但如果修改的是.aspx.cs文件,那就最好要全部重傳了, 因為.aspx.cs生成的對應dll文件的名字不是固定的, 如果沒替換正確, 頁面就會無法運行. 如果修改了.aspx文件, 就一定要重傳, 因為.aspx文件在編譯時會被修改.
Ⅲ 什麼是預編譯,有什麼作用.怎麼使用
你寫程序的時候,一開頭的那些內容#include#include#defineN100這些東西就是在預編譯的時候處理的啦。預編譯可以讓你的程序更加靈活,可配置等。例如你想寫一個程序,既能在windows下運行,又能在linux下運行,這個時候就要根據情況包含
Ⅳ 一個已經預編譯的網站。我不能再使用App_Code文件夾了,類文件寫在外邊,該如何調用
把 PrecompiledApp.config 文件刪除掉就可以用了,不過有一定風險
PrecompiledApp.config 文件用於跟蹤應用程序的部署方式,以及 ASP.NET 是否需要在請求時編譯任何文件。
刪除之後一些應用程序級的東西將無法使用.
Ⅳ net中Web應用程序和web網站的區別
net中Web應用程序和web網站的區別:
1、WebSite:生成隨機的程序集名,需要通過插件WebDeployment才可以生成單一程序集
WebApplication:可以指定網站項目生成單一程序集,因為是獨立的程序集,所以和其他項目一樣可以指定應用程序集的名字、版本、輸出位置等信息
2、新建網站與新建Asp.net Web應用程序的區別,VS2010 SP1內置了轉換程序,可以非常方便的從WebSite轉換到WebApplication,只需要復制文件,右鍵執行「轉換為Web應用程序」即可。
總結:
VS2010打sp1後,在要新做一個網站項目的時候,有兩個選擇:新建網站和新建 Asp.net Web應用程序。WebSite模式也就是「新建網站」,比較適合中小型企業網站。
Ⅵ 如何:預編譯 ASP.NET 網站項目以進行部署
預編譯以進行部署的網站項目使您能夠將站點部署到成品伺服器,並且不必部署源代碼。
可以選擇預編譯代碼和頁以及用戶控制項(.aspx、.ascx 或 .master 文件),或者僅預編譯代碼。
如果只預編譯代碼,則可以更新站點的用戶界面,而無需重新編譯整個站點。
本主題中的過程使用 ASP.NET 編譯工具 (Aspnet_compiler.exe) 的開關和參數。
有關此工具的更多信息,請參見
ASP.NET 編譯工具 (Aspnet_compiler.exe)。
有關預編譯的更多信息,請參見
ASP.NET 預編譯概述。
Ⅶ 什麼是預編譯,何時需要預編譯
預編譯又稱為預處理,是做些代碼文本的替換工作
預編譯又稱為預處理,是做些代碼文本的替換工作
處理#開頭的指令,比如拷貝#include包含的文件代碼,#define宏定義的替換,條件編譯等
就是為編譯做的預備工作的階段
主要處理#開始的預編譯指令
預編譯指令指示了在程序正式編譯前就由編譯器進行的操作,可以放在程序中的任何位置。常見的預編譯指令有:
(1)#include 指令
該指令指示編譯器將xxx.xxx文件的全部內容插入此處。若用<>括起文件則在系統的INCLUDE目錄中尋找文件,若用" "括起文件則在當前目錄中尋找文件。一般來說,該文件是後綴名為"h"或"cpp"的頭文件。
注意:<>不會在當前目錄下搜索頭文件,如果我們不用<>而用""把頭文件名擴起,其意義為在先在當前目錄下搜索頭文件,再在系統默認目錄下搜索。
(2)#define指令
該指令有三種用法:
第一種是定義標識,標識有效范圍為整個程序,形如#define XXX,常與#if配合使用;
第二種是定義常數,如#define max 100,則max代表100(這種情況下使用const定義常數更好,原因見注1);
第三種是定義"函數",如#define get_max(a, b) ((a)>(b)?(a):(b)) 則以後使用get_max(x,y)就可以得到x和y中較大的數(這種方法存在一些弊病,見注2)。
第四種是定義"宏函數",如#define GEN_FUN(type) type max_##type(type a,type b){return a>b?a:b;} ,使用時,用GEN_FUN(int),則此處預編譯後就變成了 max_int(int a,int b){return a>b?a:b;},以後就可以使用max_int(x,y)就可以得到x和y中較大的數.比第三種,增加了類型的說明。
(3)#if、#else和#endif指令
這些指令一般這樣配合使用:
#if defined(標識) //如果定義了標識
要執行的指令
#else
要執行的指令
#endif
在頭文件中為了避免重復調用(比如說兩個頭文件互相包含對方),常採用這樣的結構:
#if !(defined XXX) //XXX為一個在你的程序中唯一的標識符,
//每個頭文件的標識符都不應相同。
//起標識符的常見方法是若頭文件名為"abc.h"
//則標識為"abc_h"
#define XXX
真正的內容,如函數聲明之類
#endif
Ⅷ vs2005中怎麼把預編譯的網站正式編譯
據我所知,直接用VS2005自帶的發布工具就可以生成二進制DLL,發布網站了。
樓主需要補充一些背景內容。