2010-07-16 89 views
1

我有一个运行在mod_mono上的Apache服务器上的ASP.NET应用程序。 如果我称一个文件夹的“临时”位于网站的根目录,并运行下面的代码将文件保存在Apache的根目录下

System.IO.TextWriter tw = new System.IO.StreamWriter("temp/test.txt"); 
tw.WriteLine(DateTime.Now); 
tw.Close(); 

它保存的test.txt在C:\ Program Files文件\单-2.6.4 \ BIN \ TEMP上服务器。 如果我斜线添加到该目录名是这样的:

System.IO.TextWriter tw = new System.IO.StreamWriter("/temp/test.txt"); 

它保存到C:/ TEMP。两者都不做我想做的事。

如何获取将文件保存到网站根目录内的临时文件夹的代码? 这是一个mod_mono问题或与Apache有关的事情?

我曾尝试加入这行来的httpd.conf

Alias /temp "C:/Path_to_root_folder/temp" 

没有任何的运气。 如果临时文件夹位于根目录内,我不应该使用别名,对吗?

在我使用XSP作为Web服务器的开发环境中,一切都按预期工作。在Apache上运行只是一个问题。

回答

2

尝试:

string filename = Server.MapPath("~/temp/test.txt"); 
using (TextWriter tw = new StreamWriter(filename)) 
{ 

} 
+0

该工程的感谢! – Arizona1911 2010-07-16 20:05:13