我在myasp.com上创建了一个服务器,我想动态地为名为“UserData”的文件夹中的每个用户创建一个文件夹。在注册时,我现在通过FTP客户端创建目录,文件夹获取用户名。这种方法并不总是有效,所以我找到了传统的方法:
Directory.CreateDirectory(Server.MapPath(“〜”)+“hey”);
通过使用此方法我收到错误:拒绝访问路径'h:\ root \ home \ sagigamil-001 \ www \ site1 \ hey'。但是,我可以检查文件夹是否存在。
我该怎么办?有一种方法可以让服务器访问自己写信吗?什么是正确的方法?
答案 0 :(得分:0)
您可能需要请求您的主机授予ASP .NET进程写入权限。出于安全原因,他们可能不愿意这样做。如果您无法获得此类权限,ASP .NET将无法创建该文件夹。
答案 1 :(得分:0)
您可以使用以下代码段在FTP上创建目录:
var request = WebRequest.Create(new Uri("ftp://host/directory"));
request.Method = WebRequestMethods.Ftp.MakeDirectory;
using (var response = (FtpWebResponse)request.GetResponse()) {
Console.WriteLine("Response status code: {0}", response.StatusCode);
}
如果需要,请不要忘记设置您的凭据(将其分配给request.Credentials)。 如果您仍然遇到麻烦,请不要忘记发布您正在收到的错误。