public bool Equals(SortSpec other) { if (ReferenceEquals(null, other)) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return(Equals(other.Column, Column) && Equals(other.Direction, Direction)); }
public static ViewSpec ReadXml(XmlReader reader) { var viewSpec = new ViewSpec(); viewSpec.Name = reader.GetAttribute("name"); viewSpec.SublistName = reader.GetAttribute("sublist"); var columns = new List <ColumnSpec>(); var sorts = new List <SortSpec>(); if (reader.IsEmptyElement) { reader.ReadElementString("view"); return(viewSpec); } reader.Read(); while (true) { if (reader.IsStartElement("column")) { columns.Add(ColumnSpec.ReadXml(reader)); } else if (reader.IsStartElement("sort")) { sorts.Add(SortSpec.ReadXml(reader)); } else if (reader.NodeType == XmlNodeType.EndElement) { reader.ReadEndElement(); break; } else { reader.Read(); } } viewSpec.Sorts = new ReadOnlyCollection <SortSpec>(sorts.ToArray()); viewSpec.Columns = new ReadOnlyCollection <ColumnSpec>(columns.ToArray()); return(viewSpec); }
public static SortSpec ReadXml(XmlReader reader) { var sortSpec = new SortSpec(); sortSpec.Column = reader.GetAttribute("column"); var strDirection = reader.GetAttribute("direction"); if (strDirection != null) { sortSpec.Direction = (ListSortDirection)Enum.Parse(typeof(ListSortDirection), strDirection); } else { sortSpec.Direction = ListSortDirection.Ascending; } bool empty = reader.IsEmptyElement; reader.ReadElementString("sort"); if (!empty) { reader.ReadEndElement(); } return(sortSpec); }
public ViewSpec() { Columns = new ColumnSpec[0]; Sorts = new SortSpec[0]; }
public SortSpec(SortSpec that) { Column = that.Column; Direction = that.Direction; }