public MediaSetEntity() : base("MediaSet")
        {
            id     = new Field("Id", this, typeof(Guid), true, true);
            type   = new Field("Type", this, typeof(string), true);
            source = new Field("Source", this, typeof(string), true);
            number = new Field("Number", this, typeof(int), true);
            title  = new Field("Title", this, typeof(string), true);
            artist = new Field("Artist", this, typeof(string), true);
            date   = new Field("Date", this, typeof(DateTime), true);
            format = new Field("Format", this, typeof(string), true);
            path   = new Field("Path", this, typeof(Uri), true, true);

            Fields.Add(id);
            Fields.Add(type);
            Fields.Add(source);
            Fields.Add(number);
            Fields.Add(title);
            Fields.Add(artist);
            Fields.Add(date);
            Fields.Add(format);
            Fields.Add(path);

            DefaultSortOrder.Add(artist, true);
            DefaultSortOrder.Add(title, true);
            DefaultSortOrder.Add(number, true);
        }
示例#2
0
        public static int GetDefaultSortOrder(int fieldIndex)
        {
            DefaultSortOrder result = DefaultSortOrder.Asc;

            callSignature = String.Format("ContentGetDefaultSortOrder ({0})", fieldIndex);
            try {
                result = Plugin.GetDefaultSortOrder(fieldIndex);

                TraceCall(TraceLevel.Info, result.ToString());
            } catch (Exception ex) {
                ProcessException(ex);
            }
            return((int)result);
        }
        public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            var action     = ViewContext.RouteData.Values["action"] as string;
            var controller = ViewContext.RouteData.Values["controller"] as string;

            var sortColumn   = GetColumnFromQueryString();
            var sortOrder    = GetSortOrderFromQueryString();
            var isSortColumn = sortColumn == ColumnName || (string.IsNullOrWhiteSpace(sortColumn) && IsDefault);

            var values = new
            {
                SelectedTab = SelectedTab,
                SearchTerm  = GetSearchTermFromQueryString(),
                SortColumn  = ColumnName,
                SortOrder   = isSortColumn ? sortOrder.Reverse().ToString() : DefaultSortOrder.ToString()
            };

            var href = _urlHelper.Action(action, controller, values, null, null, null);

            var sortOrderCssSuffix = string.Empty;

            if (isSortColumn)
            {
                sortOrderCssSuffix = sortOrder == SortOrder.Ascending ? "das-table__sort--asc" : "das-table__sort--desc";
            }

            var ariaSort = sortOrder.ToString().ToLower();

            var content = new StringBuilder();

            content.Append($"<a class=\"{CssClass} {sortOrderCssSuffix}\" href=\"{href}\" aria-sort=\"{ariaSort}\">");
            content.Append(Label);
            content.Append("</a>");

            output.TagName = "";
            output.PostContent.SetHtmlContent(content.ToString());
            output.Attributes.Clear();
        }