Inheritance: HtmlEncodedString
コード例 #1
0
        private IHtmlContent RenderItemShow <TResult>(Expression <Func <TModel, TResult> > expression, bool inline, string dataType, object htmlAttributes)
        {
            if (expression == null)
            {
                return(new HtmlString(""));
            }

            var  modelExplorer = GetModelExplorer(expression);
            var  metadata      = modelExplorer.Metadata;
            var  name          = GetExpressionName(expression);
            Type type          = GetRealType(modelExplorer.ModelType);

            IHtmlContent content      = null;
            var          dataTypeName = string.IsNullOrEmpty(dataType) ? GetDataTypeName(type, metadata) : dataType.ToLower();

            switch (dataTypeName)
            {
            case "text":
                content = RenderLable(modelExplorer, inline);
                break;

            case "hidden":
                content = new HtmlString("");
                break;

            case "password":
                content = new HtmlString("");
                break;

            case "switch":
                content = RenderSwitchShow(name, modelExplorer, metadata, inline, htmlAttributes);
                break;

            case "multilinetext":
            case "textarea":
                content = RenderTextareaShow(name, modelExplorer, metadata);
                break;

            case "enum_radio":
                content = RenderEnumRadioShow(modelExplorer, inline);
                break;

            case "datetime":
            case "date":
            case "year":
            case "month":
            case "time":
                content = RenderDateTimeShow(name, modelExplorer, metadata, inline);
                break;

            case "image":
            case "imageurl":
                content = RenderImageShow(name, modelExplorer, metadata);
                break;

            default:
                content = RenderLable(modelExplorer, inline);
                break;
            }

            return(content);
        }
コード例 #2
0
 /// <summary>
 /// 过滤Html代码,仅保留白名单中的标签与属性。
 /// </summary>
 /// <param name="self"></param>
 /// <param name="Html">欲被过滤的Html代码</param>
 /// <returns></returns>
 public static HtmlString Sanitize(this IHtmlHelper self, HtmlString Html, object UserId = null)
 {
     return(self.Sanitize(Html.ToString(), UserId));
 }