public class ContentController {
public blob file { get; set; }
public PageReference upload() {
ContentVersion v = new ContentVersion();
v.versionData = file;
v.title = 'testing upload';
v.pathOnClient ='/somepath.txt';
insert v;
return new PageReference('/' + v.id);
}
}
Hope this helps !!
If you want to share the ContentVersion file then after insert DML query the ContentDocumentId from inserted ContentVersion and use ContentDocumentLink to create association between Record and ContentVersion uploaded file.
Use "LinkedEntityId" field to place the record id to which this file will be associated. Note: LinkedEntityId - Can include Chatter users, groups, records (any that support Chatter feed tracking including custom objects), and Salesforce CRM Content libraries. -- Thanks, Swayam
The easiest way to do this is using inputFile and assign it to ContentVersion instance. Like this: Class : Hope this helps !!
If you want to share the ContentVersion file then after insert DML query the ContentDocumentId from inserted ContentVersion and use ContentDocumentLink to create association between Record and ContentVersion uploaded file.
https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_objects_contentdocumentlink.htm
Use "LinkedEntityId" field to place the record id to which this file will be associated.
Note: LinkedEntityId - Can include Chatter users, groups, records (any that support Chatter feed tracking including custom objects), and Salesforce CRM Content libraries.
--
Thanks,
Swayam