예제 #1
0
        public static string ProcessImage(this IUrlHelper urlHelper, string url, int?width = null, int?height = null, int?quality = null,
                                          ImageMode?mode = null, ImageFormat?format = null)
        {
            string queryString = "?";

            if (width != null)
            {
                queryString += $"width={width}&";
            }
            if (height != null)
            {
                queryString += $"height={height}&";
            }
            if (quality != null)
            {
                queryString += $"quality={quality}&";
            }
            if (mode != null)
            {
                queryString += $"format={format}&";
            }
            if (format != null)
            {
                queryString += $"mode={mode}&";
            }
            queryString = queryString.TrimEnd('?', '&');

            return(url != null?WebPathHelper.CombineUrlParts(url, queryString) : null);
        }
예제 #2
0
        public string GetSourceUrl(string directoryName, string fileName)
        {
            if (directoryName == null || fileName == null)
            {
                return(null);
            }

            var    factory   = _actionContextAccessor.ActionContext.HttpContext.RequestServices.GetRequiredService <IUrlHelperFactory>();
            var    urlHelper = factory.GetUrlHelper(_actionContextAccessor.ActionContext);
            string sourceUrl = urlHelper.ContentLink(WebPathHelper.CombineUrlParts(directoryUrl, directoryName, fileName));

            return(sourceUrl);
        }