ASP.NET MVC3 (C #) Изображение из URL в базу данных - PullRequest
3 голосов
/ 08 марта 2012

Это кажется очень простой проблемой, однако после продолжительных поисков я не могу найти то, что ищу.Какова наилучшая возможная реализация для извлечения изображения из URL и сохранения его в базе данных SQL?

Я использую MVC3 в C # и Linq to SQL.

Ответы [ 3 ]

1 голос
/ 09 марта 2012

Сначала загрузите это изображение с URL, затем сохраните его в базе данных

     string tnail = "";
  WebClient client = new WebClient();
    using (Image src = Image.FromFile("http://www.example.com/image.jpg"))
                        {
                            using (Bitmap dst = new Bitmap(25, 33))
                            {
                                using (Graphics g = Graphics.FromImage(dst))
                                {
                                    g.SmoothingMode = SmoothingMode.HighQuality;
                                    g.InterpolationMode = InterpolationMode.High;
                                    g.DrawImage(src, 0, 0, dst.Width, dst.Height);
                                }
                                tnail = tname;
                                tnail = Path.ChangeExtension(tnail, null);
                                tnail += "_thumbnail";
                                tnail = Path.ChangeExtension(tnail, "jpg");
                                dst.Save(Path.Combine(Server.MapPath(imagepath), tnail), ImageFormat.Jpeg);

                            }
                        }
0 голосов
/ 08 марта 2012

Если мы предполагаем, что у вас есть постоянная сущность (с именем ImageFile ниже), которая имеет свойство массива байтов, представляющее файл, вы можете использовать [WebClient.DownloadData][1].

using(WebClient client = new WebClient())
{
    var img = new ImageFile();
    img.Data = client.DownloadData("http://www.example.com/image.jpg");

    // continue with saving your file.    
}
0 голосов
/ 08 марта 2012

Возможно, лучший способ - это не сохранить его непосредственно в базе данных, а сохранить ссылку на центральное хранилище файлов.через linq-to-sql

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...