You can find an example in the AddNewMediaFileWorkflow class
http://www.51aspx.com/CodeFile/CompositeC1r21/Composite.Workflows/Plugins/Elements/ElementProviders/MediaFileProviderElementProvider/AddNewMediaFileWorkflow.cs.html
http://www.51aspx.com/CodeFile/CompositeC1r21/Composite.Workflows/Plugins/Elements/ElementProviders/MediaFileProviderElementProvider/AddNewMediaFileWorkflow.cs.html
WorkflowMediaFile mediaFile = new WorkflowMediaFile();
mediaFile.FileName = System.IO.Path.GetFileName(filename);
mediaFile.FolderPath = this.FolderPath;
mediaFile.Title = this.GetBinding<string>("Title");
mediaFile.Description = this.GetBinding<string>("Description");
mediaFile.Culture = C1Console.Users.UserSettings.CultureInfo.Name;
mediaFile.Length = uploadedFile.ContentLength;
mediaFile.MimeType = MimeTypeInfo.GetCanonical(uploadedFile.ContentType);
if (mediaFile.MimeType == MimeTypeInfo.Default)
{
mediaFile.MimeType = MimeTypeInfo.GetCanonicalFromExtension(System.IO.Path.GetExtension(mediaFile.FileName));
}
using (System.IO.Stream readStream = uploadedFile.FileStream)
{
using (System.IO.Stream writeStream = mediaFile.GetNewWriteStream())
{
readStream.CopyTo(writeStream);
}
}
IMediaFile addedFile = DataFacade.AddNew<IMediaFile>(mediaFile, store.DataSourceId.ProviderName);