Server.MapPath实现

时间:2014-10-23 14:25:21

标签: c# asp.net-mvc

我在创建日志文件的文件路径上收到错误。我需要使用Server.MapPath来实现正确的路径但从未使用过。有什么建议吗?

代码:

FileStream fs = new FileStream(
                    Path.Combine(LogExtensionConfigSettings.LogFilePath, 
                                 "VanickWebServiceLogger.txt"), 
                                 FileMode.Append, 
                                 FileAccess.Write);

1 个答案:

答案 0 :(得分:2)

Server.MapPath虚拟文件路径映射到物理文件路径 - 如果LogFilePath 物理路径他们MapPath是不必要的。

如果是虚拟路径,那么只需在虚拟路径上调用Server.MapPath

string path = Server.MapPath(Path.Combine(LogExtensionConfigSettings.LogFilePath, 
                                 "VanickWebServiceLogger.txt");

FileStream fs = new FileStream(  path, 
                                 FileMode.Append, 
                                 FileAccess.Write);

请注意,您还应将FileStream包含在using语句中,以确保在出现异常时将其关闭:

using(FileStream fs = new FileStream(path, 
                                     FileMode.Append, 
                                     FileAccess.Write)
{
    // do stuff 
}