public ActionResult UploadPictPost(HttpPostedFileBase fl, string picTitle) { //仮想パス(DB保存用) string upfileKasoPath; string pictTitle = picTitle; const string uploadFolder = "../N/"; UploadPictModel mdl = new UploadPictModel(); mdl.Picts = SearchPictData(); // コンテンツ・タイプが「image/*」であるか(画像ファイルか) // をチェック if (fl.ContentType.StartsWith("image/")) { // アップロード先のパスを生成 upfileKasoPath = uploadFolder + FileNameWithTimestamp(fl.FileName); string upfileZettaiPath = Server.MapPath(uploadFolder) + FileNameWithTimestamp(fl.FileName); // 同名のファイルが存在する場合はエラー if (System.IO.File.Exists(upfileZettaiPath)) { ViewBag.Msg = "同名のファイルが存在します。"; return View("UploadPict", mdl); } else { // 画像ファイルで同名のファイルが存在しない場合は保存処理 fl.SaveAs(upfileZettaiPath); ViewBag.Msg = String.Format( "{0}をアップロードしました。", fl.FileName); } } else { // 画像ファイルでない場合はエラー ViewBag.Msg = "画像以外はアップロードできません。"; return View("UploadPict", mdl); } Session["UserId"] = 1; int userId = (int)Session["UserId"]; //DB登録処理 using (var db = new SakanaDBEntities1()) { db.PICT.Add(new PICT { CREATE_DT=DateTime.Now, EDIT_DT = DateTime.Now, DELETE_FLG=0, PICT_PATH=upfileKasoPath, USER_ID = userId, PICT_TITLE=pictTitle }); // SaveChangesが呼び出された段階で初めてInsert文が発行される db.SaveChanges(); } ViewBag.Msg = "画像アップロードしました。"; // 入力元のフォームに結果を表示 return View("UploadPict", mdl); }
/// <summary> /// 画像選択ダイアログ /// </summary> /// <returns></returns> public ActionResult _SelectPict() { //Ajaxではないときはお引取り願う if (!Request.IsAjaxRequest()) return new EmptyResult(); UploadPictModel mdl = new UploadPictModel(); mdl.Picts = SearchPictData(); return PartialView("_SelectPict", mdl); }
public ActionResult UploadPict() { UploadPictModel mdl = new UploadPictModel(); mdl.Picts = SearchPictData(); return View(mdl); }