Uploading a file into Umbraco 8 has changed slightly, using the code below as found on the Umbraco Help Forums, worked for me:
Now you need the IContentTypeBaseServiceProvider and a Stream.
// Umbraco 8 using Umbraco.Core; <- Important..
// Needed Interfaces IMediaService _mediaService; IContentTypeBaseServiceProvider _contentTypeBaseServiceProvider;
// The new way to do it. IMedia media = _mediaService.CreateMediaWithIdentity("Filename", 1234, "File"); media.SetValue(_contentTypeBaseServiceProvider, "umbracoFile", "FilenameWithExtension", Stream); _mediaService.Save(media);
Byte[]
byte[] byteArray;
using (Stream stream = new MemoryStream(byteArray)) { media.SetValue(_contentTypeBaseServiceProvider, "umbracoFile", "FilenameWithExtension", stream); }
HttpPostedFileBase
HttpPostedFileBase httpPostedFileBase;
media.SetValue(_contentTypeBaseServiceProvider, "umbracoFile", httpPostedFileBase.FileName, httpPostedFileBase.InputStream);
Thanks to Bo Jacobsen for sharing the solution!
Comments
Recent Posts
Categories