示例#1
0
 public static Material Create(string description, MaterialType type, HttpPostedFileBase file, BaseDbContext db)
 {
     if (!type.Match(file))
         return null;
     string uploadFileName = DateTime.Now.ToString("yyyyMMddHHmmss") + Path.GetExtension(file.FileName);
     string absolutFileName;
     switch (type)
     {
         case MaterialType.Identity:
             absolutFileName = HttpContext.Current.Server.MapPath("~/UserUpload/") + "Identity/" + uploadFileName;
             break;
         case MaterialType.Avatar:
             absolutFileName = HttpContext.Current.Server.MapPath("~/UserUpload/") + "Avatar/" + uploadFileName;
             break;
         default:
             absolutFileName = HttpContext.Current.Server.MapPath("~/UserUpload/") + "Administrator/" + uploadFileName;
             break;
     }
     //执行上传
     if (File.Exists(absolutFileName))
     {
         File.Delete(absolutFileName);
     }
     file.SaveAs(absolutFileName);
     Material material = new Material(uploadFileName, description, type);
     //添加Material记录
     db.Materials.Add(material);
     //保存更改
     db.SaveChanges();
     return db.Materials.Find(material.Id);
 }