该SaveAs
函数采用文件名并将文件保存到您提供的任何路径,前提是满足以下条件:
- 您的本地计算机可以访问文件路径
- 您的本地帐户具有写入文件路径的正确权限
我建议你有一个 web.config 设置,可以在运行代码时检查。然后您可以决定是使用Server.MapPath
还是使用绝对路径。
例如,在“调试”模式(本地运行)下,您可能有以下设置:
<appSettings>
<add key="RunningLocal" value="true" />
<add key="ServerFilePath" value="\\\\MyServer\\SomePath\\" />
</appSettings>
在“实时”模式下:
<appSettings>
<add key="RunningLocal" value="false" />
<add key="ServerFilePath" value="NOT USED" />
</appSettings>
那么你的代码可能看起来像这样:
bool runningLocal = GetFromConfig();
bool serverFilePath = GetFromConfig();
string filePath;
if(runningLocal)
filePath = serverFilePath;
else
filePath = Server.MapPath(PicturePath);
if (!System.IO.File.Exists(filePath ))
{
file.SaveAs(filePath );
}