2011-06-30 78 views
0

我想在打開它之前檢查一個ASPX文件是否存在,因爲它是動態加載的。這應該是通過使用下面的代碼很簡單:檢查ASP.NET頁面是否存在預編譯頁面

string directoryPath = Server.MapPath("~/Forms/"); 
string filePath = directoryPath + nameOfFile + ".aspx"; 
if (File.Exists(filePath)) 
{ 
    Response.Redirect("~/Forms/" + nameOfFile + ".aspx"); 
} 

對於IIS網站不受aspnet_compiler.exe,工程預編譯。但是,如果我預編譯它們(即使是同一個網站),頁面也不會被找到。通過預編譯它們,磁盤上仍然存在虛擬文件,以便在文件系統上找到它們。

也許有人可以幫我解決這個...

+1

你確定嗎?在文件夾中放置一個虛擬文本文件,看看您是否可以看到它。它應該喜歡權限問題。 * .cs文件不會被部署,如果該網站是「預編譯」的,但是你仍然應該有.aspx文件在..... – inspite

回答

0

您可能必須採取這一步,預編譯的dll的反映,看看他們是否包含類的頁面,你要加載

+0

那好吧,那是可能的。但爲什麼沒有找到預編譯創建的虛擬文件?他們存在,所以他們必須被找到......通常。 – Ferdi