public static string GetFullPath(string path)
{
Throw.IfNullOrEmpty(nameof(path), path);
path = CheckForBaseDirectory(path);
path = Path.GetFullPath(path);
Throw.IfFalse(nameof(path), Directory.Exists(path), "Unable to find directory: {0}", path);
return path;
}