2011-06-30 51 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