C# Can';t使用Filestreams.NET在服务器中创建文件
我试图做的是在服务器中创建或写入一个文本文件,作为数据日志,这段代码在我的pc中运行良好,但当我构建解决方案并上载服务器文件时,它不会创建任何内容。这段代码可能只是附加了数据,因为它找不到文件,所以什么都不做C# Can';t使用Filestreams.NET在服务器中创建文件,c#,.net,server,filestream,streamwriter,C#,.net,Server,Filestream,Streamwriter,我试图做的是在服务器中创建或写入一个文本文件,作为数据日志,这段代码在我的pc中运行良好,但当我构建解决方案并上载服务器文件时,它不会创建任何内容。这段代码可能只是附加了数据,因为它找不到文件,所以什么都不做 string fileName= HttpContext.Current.Server.MapPath("~\\logs.txt"); using (FileStream SourceStream = File.Open(fileName, FileMode.Append)) { u
string fileName= HttpContext.Current.Server.MapPath("~\\logs.txt");
using (FileStream SourceStream = File.Open(fileName, FileMode.Append))
{
using (StreamWriter file = new StreamWriter(SourceStream))
{
file.WriteLine(data);
}
}
我还检查了服务器文件夹权限,一切正常
我错过什么了吗?
有什么不对劲吗?
有什么可以做得更好的吗?您应该授予IIS应用程序池的写入权限,以便应用程序可以在目录上写入文件。
在本地应用程序上,默认情况下具有此权限,但在服务器上,您应该手动授予此权限。是否出现异常?如果是这样的话,错误是什么?这就是问题所在,我什么都不知道,我只知道文件没有被创建。你那里的代码会抛出一个异常,有很多异常取决于出错的地方。该文件正在其他位置写入,或者抛出了一个异常,您正在其他位置吞咽。您是否可以将
文件名
的位置记录到某个位置,以便查看它的去向?您是否在应用程序的其他目录(如~/Content
)上对其进行了测试?我尝试了其他目录,但再次尝试,如果您没有收到任何错误,则可能文件正在创建,但由于服务器配置或主机控制面板的原因,您无法看到它。如何检查文件是否已创建?