I am developing a website in MVC 4, where user fill some information and save it to upload.
all the information except image is being saved on server using Javascript, Json and Ajax, like given below:
$.ajax({
url: action,
type: "POST",
data: JSON.stringify(PostViewModel),
dataType: "json",
contentType: "application/json; charset=utf-8",
beforeSend: function () {
},
success: function (data) {
try{
alert('success');
}catch(err){alert(' Error: '+err);}
},
complete: function () {
},
error: function (xhr, ajaxOptions, thrownError) {
alert("Error occured");
}
});
But Now I need to upload his image also, but I couldn't find any method that can work with this approach or any without post back.
I know putting FileUpload Control in Form tag and on press of submit button i can get image file like as given below:
HttpPostedFileBase photo = Request.Files["photo"];
if (photo != null)
{
Session["ImgPath"] = "~/Content/PostImages/" + photo.FileName;
string path = Server.MapPath("~/Content/PostImages/");
photo.SaveAs(path + photo.FileName);
}
But for this method I'll have to change my approach of saving content (using Javascript, Json & Ajax) which I can't.
Please help
Thanks.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…