Aaron Sadler
Posted by:

Aaron Sadler

Category

Umbraco

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

Post a comment

Fields marked with an * (asterisk) are required


Recent Posts

News
Green Web Foundation Listing Renewed

Our listing in the Green We...

Umbraco
We're now UK Umbraco Foundation Sponsors!

Supporting great Umbraco ev...

News
.NET 9 Now Available

DotNet 9 Has been rolled ou...

News
Black Friday 2024 - FREE Umbraco Forms licence!

How to claim your FREE Umbr...

Umbraco
How to deploy Umbraco using Web Deploy from Azu...

How to deploy Umbraco using...