FTP 設定ファイルを作成するために呼び出される関数があるという問題がありますが、(FTP 設定ファイルが存在しないため) この関数が呼び出されないことがあり、この問題は断続的です。この関数は、
Directory.CreateDirectory(System.Web.HttpContext.Current.Server.MapPath(UploadPath));
public bool GenerateFTPSettings()
{
try
{
using (System.IO.StreamWriter file = new System.IO.StreamWriter(HttpContext.Current.Server.MapPath((string)HttpContext.Current.Session["UploadPath"]) + @"\ftp_settings.ftp"))
{
file.WriteLine(string.Format("user {0}",ConfigurationManager.AppSettings["FTPUserName"]));
file.WriteLine(ConfigurationManager.AppSettings["FTPPassword"]);
file.WriteLine(string.Format("QUOTE SITE LRECL=80 RECFM=FB CY PRI={0} SEC={1}", ConfigurationManager.AppSettings["PRI"], ConfigurationManager.AppSettings["SEC"]));
file.WriteLine("BIN");
file.WriteLine(string.Format("put {0}\\NEW FILE'FTPP.Z.T.{1}.{2}.INT'", HttpContext.Current.Server.MapPath((string)HttpContext.Current.Session["UploadPath"]),
ConfigurationManager.AppSettings["FTPUserName"], ConfigurationManager.AppSettings["MailboxID"]));
file.WriteLine("QUIT");
}
return true;
}
catch (Exception ex)
{
ErrorHandler.WriteError(ex, "Upload");
return false;
}
}