如何在ASP.Net MVC中获取方法的开始时间和结束时间?

时间:2012-10-12 10:54:40

标签: asp.net-mvc datetimepicker

我的控制器上传方法中有一个方法可将上传的图像文件转换为三种不同的大小。我想显示文件上传时间和转换停止的方法结束时,任何人都可以告诉我该如何做到这一点

       this is my controller


           public ActionResult Upload()
    {
        //ViewBag.ProcessingTime = DateTime.Now;
        return View();
    }

        [HttpPost]
        public ActionResult Uploading(ImageModel model)
        {
            if (ModelState.IsValid)
            {

                Console.WriteLine("time is"+System.DateTime.Now);

                string fileName = Guid.NewGuid().ToString() + System.DateTime.Now.ToString("yyyy/MM/dd/hh/mm/ss/fff");
                string serverPath = Server.MapPath("~");
                string imagesPath = serverPath + "Content\\Images\\";
                string thumsise = Path.Combine(imagesPath, "Thumb" + fileName);
                string thumbPath = Path.Combine(imagesPath, "Thu" + fileName);
                //string thumbPath = imagesPath + "Thumb\\";
                string fullPath = Path.Combine(imagesPath, "Full" + fileName);
                //string fullPath = imagesPath + "Full\\";
               // string Bigpath = imagesPath + "big\\";
                string Bigpath = Path.Combine(imagesPath, "big" + fileName);
                string Bigpatha = Path.Combine(imagesPath, "biga" + fileName);
                string Bigpathb = Path.Combine(imagesPath, "bigb" + fileName);
                //string Bigpatha = imagesPath + "biga\\";
                //string Bigpathb = imagesPath + "bigb\\";
                string Bigpathc = Path.Combine(imagesPath, "bigc" + fileName );
                //string Bigpathc = imagesPath + "bigc\\";
                //var firstSize = Path.Combine(uploadFolder, "bigsize-" + Path.GetFileName(uploadedFile));
                ImageModel.ResizeAndSave(thumsise, fileName, model.ImageUploaded.InputStream, 80, true);
                ImageModel.ResizeAndSave(thumbPath, fileName, model.ImageUploaded.InputStream, 100, true);
                ImageModel.ResizeAndSave(fullPath, fileName, model.ImageUploaded.InputStream, 500, true);
                ImageModel.ResizeAndSave(Bigpath, fileName, model.ImageUploaded.InputStream, 200, true);
                ImageModel.ResizeAndSave(Bigpatha, fileName, model.ImageUploaded.InputStream, 250, true);
                ImageModel.ResizeAndSave(Bigpathb, fileName, model.ImageUploaded.InputStream, 150, true);
                ImageModel.ResizeAndSave(Bigpathc, fileName, model.ImageUploaded.InputStream, 50, true);
                Console.WriteLine("Time is " + System.DateTime.Now);
            }
            Console.WriteLine("Time is "+System.DateTime.Now);

            Console.ReadLine();
            return View();
        } 

2 个答案:

答案 0 :(得分:0)

您必须在Model中添加其他字段:

 public DateTime StartTime { get; set; }
 public DateTime OperatingTime { get; set; }
 public DateTime EndTime { get; set; }

然后适当地分配每个,即StartTime = DateTime.Now;

然后在View

@Html.DisplayFor(m=>m.StartTime);

附加

我会亲自将上传图片功能包装到新方法中,最好是在ImageModel课程中。然后你可以这样做:model.UploadImage(fileName, imagePath);

答案 1 :(得分:0)

使用秒表

   var stopwatch = new Stopwatch();
   stopwatch.Start();    
   //whatever you want to time
   stopwatch.Stop();
   var result1 = string.Format("{0} to run whatever ", 
                               stopwatch.Elapsed.ToString());
   Console.WriteLine(result1);

对于多个时间,您可以重置秒表并执行与第一个相似的更多时间。