January 14, 2017

Upload Media file in Sitecore from url

We can directly upload media file into Sitecore from url.
private string UploadImageToMediaLibrary(string imageUrl,string FileName)
        {
            var webRequest = WebRequest.Create(imageUrl);
            string uploadedMediaImage = string.Empty;
            using (var webResponse = webRequest.GetResponse())
            {
                using (var stream = webResponse.GetResponseStream())
                {
                    if (stream != null)
                    {
                        using (var memoryStream = new MemoryStream())
                        {
                            stream.CopyTo(memoryStream);
                            var mediaCreator = new MediaCreator();
                            var options = new MediaCreatorOptions
                            {
                                FileBased = false,
                                Versioned = false,
                                AlternateText = FileName,
                                Database = Factory.GetDatabase("master"),
                                Destination = "/sitecore/media library/Articles" + "/" + FileName
                            };
                            using (new SecurityDisabler())
                            {
                                Item itm  = mediaCreator.CreateFromStream(memoryStream, FileName + ".jpeg", options);
                                uploadedMediaImage = itm.ID.ToString();
                            }
                         }
                    }
                }
            }
            return uploadedMediaImage;
        }

No comments:

Post a Comment