I'm looking to retrieve the ContentReference for a file in a LinkItem, but I'm struggling on how to do it. ContentReference.Parse seems only to work when the LinkItem refers to a page.
Anyone who has any pointers on where to look?
This code should work. However, haven't tried it on files.
if (PermanentLinkMapStore.TryToMapped(linkItem.Href, out mappedUrl))
var url = new UrlBuilder(mappedUrl);
var contentReference = PermanentLinkUtility.GetContentReference(url);
But I guess there is new and better approach, maybe with UrlResolver...
The way of Johan is very nice but I think you can base on LinkItem to get it easier:
var mappedHref = linkItem.GetMappedHref();
var contentReference = EPiServer.Web.PermanentLinkUtility.GetContentReference(new UrlBuilder(mappedHref));
// Ha Bui