C#aspx图像上传使用angular

时间:2016-04-29 09:06:55

标签: javascript c# asp.net angularjs

我正在使用带有角度js的aspx页面。 我使用了angular和c#webmethod文件上传。

我试图上传像web api中使用的图片。

  

使用web api时,图像上传成功。当我尝试   使用aspx,webmethod没有打,但结果随之而来   状态成功以及html页面。

  无论如何,C#服务器端代码都没有打到。

以下是我使用Web api的Angular代码

return new Promise(function (resolve, reject) {

                var xhr = new XMLHttpRequest();
                var form = new FormData();
                if (file)
                    form.append("image", file);

                var url = "Page.aspx/UploadImage";

                xhr.open("Post", url, true);
                xhr.onload = function () {
                    if (this.status >= 200 && this.status < 300) {
                        resolve(xhr.response);
                    } else {
                        reject(xhr.statusText);
                    }
                };
                xhr.onerror = function () {
                    reject(xhr.statusText);
                };

                xhr.send(form);
            });

C#:

public static string UploadImage()
        {
 if (HttpContext.Current.Request.Files.AllKeys.Any())
                {
                    httpPostedFile = HttpContext.Current.Request.Files["image"];

                    if (Path.GetExtension(httpPostedFile.FileName) == "" || !allowedImageTypes.Contains(Path.GetExtension(httpPostedFile.FileName), StringComparer.CurrentCultureIgnoreCase))
                        BLErrorHandler.ApplicationError("Invalid image type", ValidationError.ERR28);


                }
}

0 个答案:

没有答案