public static bool TryFrom(string folder, string file, out FileLink link) { link = null; if (FolderLink.TryFrom(folder, out var parsedFolder)) { if (FileName.TryFrom(file, out var parsedFile)) { link = new FileLink(parsedFolder, parsedFile); } } return(link != null); }
public static bool TryFrom(string value, out FileLink link, bool extensionOptional = false) { link = null; if (FolderLink.TryFrom(value, out var parsedFolder)) { var file = parsedFolder.Resource.Path.Segments.LastOrDefault()?.ToString(); if (file != null) { if (FileName.TryFrom(file, out var parsedFile, extensionOptional)) { if (!parsedFolder.TryUp(out var folderUp)) { folderUp = parsedFolder; } link = new FileLink(folderUp, parsedFile); } } } return(link != null); }
public static bool TryFrom(string folder, FileResource file, out FileLink link) { link = FolderLink.TryFrom(folder, out var parsedFolder) ? From(parsedFolder, file) : null; return(link != null); }