مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

سمیه حاتمی

عضویت از 1394/06/24

برگرداندن گالری تصاویر توسط web api

  • شنبه 5 تیر 1395
  • 14:55
تشکر میکنم

سلام دوستان

قصد دارم تصاویر مربوط به یک شهر خاص را در داخل Image Gallery توسط Web api بازگردانم .هر دو حالت باز گرداندن خود تصویر و باز گرداندن آرایه ای از بایت را چگونه باید بنویسم

تابعی که خود من تا به حال در داخل Web api نوشته ام به صورت زیر است

  public HttpResponseMessage GetGallery2(int id)
        {
         


            FileStream fileStream;
            Image image;
            MemoryStream memoryStream;
         
            


            var gallery = db.ImageGallery.Where(c => c.CityId == id);
           
    var stream = new MemoryStream();
            //        fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
            var result = new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new ByteArrayContent(stream.GetBuffer())
            };
            foreach (ImageGallery item in gallery)
            {
            
                string filePath = System.Web.Hosting.HostingEnvironment.MapPath("/Images/Cities/Image/" + item.ImageName);
                fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);
                result.Content.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("")
                {
                    FileName = System.Web.Hosting.HostingEnvironment.MapPath(@"/Images/Cities/Image/" + item.ImageName),
                    DispositionType =filePath,

            };
                image = Image.FromStream(fileStream);
                memoryStream = new MemoryStream();
                image.Save(memoryStream, ImageFormat.Png);

               result.Content = new ByteArrayContent(memoryStream.ToArray());
               result.Content.Headers.ContentType = new MediaTypeHeaderValue("image/png");
                result.Content.Headers.ContentType = new MediaTypeHeaderValue("image/jpg");


            }

            return result;


        }

اما این تابع جواب نمی دهد در ضمن با یک تصویر مشکلی ندارم و آن را راحت دریافت می کنم مشکل من با مجموعه ای از تصاویر است .یعنی شهر ی که شناسه آن به تابع داده می شود دارای چندین تصویر است و می خواهم تمام آنها با فراخوانی سرویس و این تابع باز گردانده شود .

پس مشکل من : باز گرداندن گالری تصاویر مربوط به یک شی خاص در web api است

پاسخ های این پرسش

تعداد پاسخ ها : 1 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • شنبه 5 تیر 1395
  • 18:21

اگر از WebApi استفاده میکنید بهتره به صورت Json برگدونید

این لینک رو ببینید

 

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)