Rhythm.Staticize.ResourcesDownloadBaseBehavior.ParseResourcesUris C# (CSharp) Method

ParseResourcesUris() private method

从“src”属性的值创建Uri对象。
private ParseResourcesUris ( Uri documentUri, string documenBaseDir, string srcAttributes ) : System.Uri[]
documentUri System.Uri
documenBaseDir string
srcAttributes string “src”属性集合。
return System.Uri[]
        Uri[] ParseResourcesUris(Uri documentUri, string documenBaseDir, string[] srcAttributes)
        {
            Uri parseUri = null;
            var parsedImgSrcUris = (from src in srcAttributes
                                    select Uri.TryCreate(src, UriKind.RelativeOrAbsolute, out parseUri) ? parseUri : null).Where(m => m != null).ToArray();

            var filter = (from uri in parsedImgSrcUris
                          where uri.IsAbsoluteUri == false || (uri.IsAbsoluteUri && uri.Host == documentUri.Host)
                          select uri.IsAbsoluteUri ? uri : CreateAbsoluteUri(documentUri, documenBaseDir, uri)).Distinct().ToArray();
            return filter;
        }