Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 在图像上载时在SQL Server上创建目录_Asp.net_Image_File Upload - Fatal编程技术网

Asp.net 在图像上载时在SQL Server上创建目录

Asp.net 在图像上载时在SQL Server上创建目录,asp.net,image,file-upload,Asp.net,Image,File Upload,我想将每个单独的图像存储到它自己的目录中,该目录将在上传操作时创建,结构如下 /server_img_path/<year>/<month>/<day>/<hour><minutes><seconds><img_id>.png 谢谢尝试保存图像,但这不会将每个图像存储到它自己的目录中,因为通过此代码,您可以创建一天的目录。因此,一天中的所有图像都将放在该文件夹中 var now = DateTime.Now;

我想将每个单独的图像存储到它自己的目录中,该目录将在上传操作时创建,结构如下

/server_img_path/<year>/<month>/<day>/<hour><minutes><seconds><img_id>.png

谢谢

尝试保存图像,但这不会将每个图像存储到它自己的目录中,因为通过此代码,您可以创建一天的目录。因此,一天中的所有图像都将放在该文件夹中

var now = DateTime.Now;
var fn = Server.MapPath("~/Content/img/");
var dirPath = Path.Combine(fn, now.Year.ToString(), now.Month.ToString(), now.Day.ToString());
if (!Directory.Exists(dirPath))
    Directory.CreateDirectory(dirPath);
var filename = dirPath+now.Hour.ToString() + now.Minute.ToString() + now.Second.ToString() + name  + ".png";
img.Save(filename, System.Drawing.Imaging.ImageFormat.Png);

我不知道你的网站有多受欢迎,但如果使用分辨率只有1秒的文件名,那么当你同时上传多个文件时,就会产生重复的文件名。如果在上载图像时将图像链接存储在数据库中,则最好从数据库中指定一个唯一的名称。
var now = DateTime.Now;
var fn = Server.MapPath("~/Content/img/");
var dirPath = Path.Combine(fn, now.Year.ToString(), now.Month.ToString(), now.Day.ToString());
if (!Directory.Exists(dirPath))
    Directory.CreateDirectory(dirPath);
var filename = dirPath+now.Hour.ToString() + now.Minute.ToString() + now.Second.ToString() + name  + ".png";
img.Save(filename, System.Drawing.Imaging.ImageFormat.Png);