5

私は現在、ASP.NET MVC Razor で summernote コントロールからの画像のアップロードを処理するための次の手順を実行しています。

サーバーコード:

[HttpPost]
    public ActionResult UploadImage(HttpPostedFileBase file)
    {
        var imageUrl = UpdateProfilePicture(file);
        return Json(imageUrl);
    }

クライアント側の ajax :

<script>
$('.summernote').summernote({
    height: 200,
    focus: true, onImageUpload: function (files, editor, welEditable) {
        sendFile(files[0], editor, welEditable);
    }
});
function sendFile(file, editor, welEditable) {

    console.log(file);
    $.ajax({
        data: {file:file},
        type: "POST",
        url: "@Url.Action("UploadImage","Message")",
        cache: false,
        contentType: false,
        processData: false,
        success: function (url) {
            editor.insertImage(welEditable, url);
        }
    });
}

サーバー側のメソッドで結果が得られましたが、パラメーターHttpPostedFileBase fileが null です

いくつかの例はそれが機能すると言っていますが、私のコードは機能的に機能しません!

何か案は ?

4

1 に答える 1

0

メソッドで「Request」オブジェクトを使用して、次のようなファイルを取得します。

        [HttpPost]
    public string UploadImage()
    {
        for (int i = 0; i < Request.Files.Count; i++)
        {
            var file = Request.Files[i];

            var fileName = Path.GetFileName(file.FileName);

            var path = Path.Combine(Server.MapPath("~/Images/"), fileName);
            file.SaveAs(path);
        }
        return YOUR UPLOADED IMAGE URL;
    }
于 2016-03-02T07:45:48.683 に答える