2012-03-09 51 views
1

我是新成立的一家小公司的技術人員。我已經繼承了他們近乎完整的近乎完整的ASP.NET網頁,但我對ASP.NET並不熟悉。幾年前它被原始的開發者拋棄了,一年左右,有人試圖用內聯代碼來完成它。從新的VB Codebehind重新編譯舊的ASP.NET頁面.dll的?

既然我已經發掘了舊的VB源代碼文件,我已經對Page.aspx.v b做了一個單行更改,並且需要將它關聯到它的Page.aspx文件。麻煩的是,@Page指令直接繼承自己的App_Web_Page.xxxxxx.dll。每一頁都這樣做。這並不反映在我必須與之合作的來源中,而是它現在運作的方式。最後一個接觸它的人早已忘記了他的工作細節,而且我對ASP.NET不熟悉,不知道該問什麼。

所以我的@ Page指令去像這樣:

<%@ page language="vb" autoeventwireup="false" inherits="Page, 
     App_Web_page.aspx.cdcab7d2" masterpagefile="~/Master.Master" 
     enablesessionstate="True" enableEventValidation="false" %> 

當我嘗試預編譯的網站,我的@Page指令看起來完全不同:

<%@ page language="vb" autoeventwireup="false" Codebehind="Page.aspx.vb" 
     inherits="Project.Page" masterpagefile="~/Master.Master" 
     enablesessionstate="True" enableEventValidation="false" %> 

,並且,是預編譯的,一點也沒有不會產生一個頁面唯一的.dll文件,我可以將其更改爲live bin目錄並更改@Page指令。我已經嘗試了@Page指令中的一些排列組合,試圖讓它在訪問時編譯新的VB代碼,但是我總是發現錯誤,其中最好的告訴我.aspx中的ASP元素不是在.aspx.vb中定義。

有人能指出我對這個方向正確嗎?

回答

0

你必須選擇該選項像下面突出...

enter image description here

+0

我使用Visual Studio Express的2010年,在那裏,這是不以任何的幾個地方,我發現來形容上市編譯設置。 – 2012-03-12 14:51:07

+0

正如你所提到的關於個人頁面的DLL,你可以找到這個對話框,在你的項目瀏覽器中右鍵單擊網站。現在選擇發佈網站選項。這會顯示如上所示的對話框。現在選擇突出顯示的選項將使您能夠準備單個文件/文件夾的dll。這裏要注意的一點是,你的網站有一些小的變化,你只需要放置相應文件的發佈dll即可。希望這會幫助你。 – Pankaj 2012-03-12 16:05:06

+0

VS Express 2010也不允許發佈ASP.NET網站,所以如果我願意,我找不到那個對話框。但是,使用'-fixednames'選項編譯的命令行僅爲我的兩個頁面生成.dll文件十五頁左右。 – 2012-03-12 17:23:05