读书人

为什么Directory.CreateDirectory 出错

发布时间: 2012-01-15 22:57:49 作者: rapoo

为什么Directory.CreateDirectory 出错
string UserDirectory = "TestFileId ";//所要创建文件夹的名字,实际运用中可为用户注册ID
string UserPath = Server.MapPath( "MT ").ToString() + "\\ " + UserDirectory + "\\ " + "ProductsImages ";

UserPath=Server.MapPath(UserPath);

if (!System.IO.Directory.Exists(UserPath)) //如果文件夹不存在则创建
{
Directory.CreateDirectory(UserPath);
}

----------
System.Web.HttpException: “D:\xxx\MT\TestFileId”不是有效的虚拟路径。 在 System.Web.VirtualPath.Create(String virtualPath, VirtualPathOptions options) 在 System.Web.HttpServerUtility.MapPath(String path) 在 Dhtml.btnCreate_Click(Object sender, EventArgs e) 位置 d:\xxx\MT\default.aspx.cs:行号 177

明明D:\xxx\MT\TestFileId路径存在呀

[解决办法]
你应该是在这句就出错了吧:

Server.MapPath( "MT ")
[解决办法]
MT是虚拟目录吗,试试这些:

Server.MapPath( "/ ")
Server.MapPath( "~ ")
[解决办法]
string UserDirectory = "TestFileId ";//所要创建文件夹的名字,实际运用中可为用户注册ID

string UserPath = Server.MapPath( "MT ").ToString() + "\\ " + UserDirectory + "\\ " + "ProductsImages ";

UserPath=Server.MapPath(UserPath);

你用太多个Server.MapPath了,用一个就行了.

[解决办法]
断点调度..总能找到你要的...
[解决办法]
你使用Server.MapPath有问题,这个只能映射虚拟目录,

你先用Server.MapPath( "/ ")取当前虚拟目录的物料目录,然后再加上你的子目录。
[解决办法]
提示什么?
[解决办法]
UserPath=D:\xxx\MT\TestFileId\ProductsImages

返回与 Web 服务器上的指定虚拟路径相对应的物理文件路径。
public string MapPath (
string path
)

string fname =Server.MapPath(UserPath)+ "\\preview.html " ;

????用错了!

读书人网 >asp.net

热点推荐