ASP.NET WEB API غير قادر على تحميل بيانات متعددة الأجزاء / النماذج (صورة) إلى خادم الويب

0

بعد تحميل الصورة من خلال ASP.NET WEB API بنجاح عبر localhost. لقد قمت بتحميل مشروعي على خادم الاستضافة ولكن هذه المرة تلقيت الخطأ كـ

an error has occured

هذا هو جهاز التحكم الخاص بي

   tutorEntities entities = new tutorEntities();
    [HttpPost]
    public HttpResponseMessage ImageUp()
    {

        var httpContext = (HttpContextWrapper)Request.Properties["MS_HttpContext"];
        img std = new img();
        //      std.Title = httpContext.Request.Form["Title"];
        //           std.RollNo = httpContext.Request.Form["RollNo"];
        //           std.Semester = httpContext.Request.Form["Semester"];
        HttpResponseMessage response = new HttpResponseMessage();
        var httpRequest = HttpContext.Current.Request;
        if (httpRequest.Files.Count > 0)
        {
            string random = Guid.NewGuid().ToString();
            string url = "/UserImage/" + random + httpRequest.Files[0].FileName.Substring(httpRequest.Files[0].FileName.LastIndexOf('.'));
            Console.WriteLine(url);
            string path = System.Web.Hosting.HostingEnvironment.MapPath(url);


            httpRequest.Files[0].SaveAs(path);
            std.Path = "http://localhost:2541/" + url;

        }
        entities.imgs.Add(std);
        entities.SaveChanges();

        return Request.CreateResponse(HttpStatusCode.OK);
    }

1 إجابة

0

تأكد من أن مستخدم AppPoolIdentity لديه أذونات الكتابة على مجلد UserImage. أيضًا ، احصل على الاستثناء في التعليمات البرمجية لتصحيح الأخطاء:

try {
 var httpContext = (HttpContextWrapper)Request.Properties["MS_HttpContext"];
        img std = new img();
        //      std.Title = httpContext.Request.Form["Title"];
        //           std.RollNo = httpContext.Request.Form["RollNo"];
        //           std.Semester = httpContext.Request.Form["Semester"];
        HttpResponseMessage response = new HttpResponseMessage();
        var httpRequest = HttpContext.Current.Request;
        if (httpRequest.Files.Count > 0)
        {
            string random = Guid.NewGuid().ToString();
            string url = "/UserImage/" + random + httpRequest.Files[0].FileName.Substring(httpRequest.Files[0].FileName.LastIndexOf('.'));
            Console.WriteLine(url);
            string path = System.Web.Hosting.HostingEnvironment.MapPath(url);


            httpRequest.Files[0].SaveAs(path);
            std.Path = "http://localhost:2541/" + url;

        }
        entities.imgs.Add(std);
        entities.SaveChanges();

        return Request.CreateResponse(HttpStatusCode.OK);
}
catch(Exception ex) {
      var response = new HttpResponseMessage(HttpStatusCode.InternalServerError)
      {
           Content = new StringContent(ex.ToString()),
           ReasonPhrase = "Error"
      }

      throw new HttpResponseException(response);
}
:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام