⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usercomparer.cs

📁 BugNET is an issue tracking and project issue management solution built using the ASP.NET web applic
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.Web;
using BugNET.Providers.MembershipProviders;

namespace BugNET.BusinessLogicLayer 
{
    public class UserComparer : IComparer<CustomMembershipUser>
    {
        /// <summary>
        /// Sorting column
        /// </summary>
        private string _sortColumn;
        /// <summary>
        /// Reverse sorting
        /// </summary>
        private bool _reverse;

        /// <summary>
        /// Initializes a new instance of the <see cref="IssueComparer"/> class.
        /// </summary>
        /// <param name="sortEx">The sort ex.</param>
        /// <param name="ascending">The ascending.</param>
        public UserComparer(string sortEx,bool ascending) {
          if (!String.IsNullOrEmpty(sortEx))
          {
              _reverse = ascending;      
              _sortColumn = sortEx;
          }
        }

        /// <summary>
        /// Equalses the specified x.
        /// </summary>
        /// <param name="x">The x.</param>
        /// <param name="y">The y.</param>
        /// <returns></returns>
        public bool Equals(CustomMembershipUser x, CustomMembershipUser y)
        {
          if (x.ProviderUserKey == y.ProviderUserKey) {
            return true;
          }
          else {
            return false;
          }
        }

        /// <summary>
        /// Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other.
        /// </summary>
        /// <param name="x">The first object to compare.</param>
        /// <param name="y">The second object to compare.</param>
        /// <returns>
        /// Value Condition Less than zero<paramref name="x"/> is less than <paramref name="y"/>.Zero<paramref name="x"/> equals <paramref name="y"/>.Greater than zero<paramref name="x"/> is greater than <paramref name="y"/>.
        /// </returns>
        public int Compare(CustomMembershipUser x, CustomMembershipUser y)
        {
          int retVal = 0;
          switch (_sortColumn) 
          {
            case "UserName":
                retVal = String.Compare(x.UserName, y.UserName, StringComparison.InvariantCultureIgnoreCase);
                break;
            case "FirstName":
              retVal = String.Compare(x.FirstName, y.FirstName, StringComparison.InvariantCultureIgnoreCase);
              break;
            case "LastName":
              retVal = String.Compare(x.LastName, y.LastName, StringComparison.InvariantCultureIgnoreCase);
              break;
            case "DisplayName":
              retVal = String.Compare(x.DisplayName, y.DisplayName, StringComparison.InvariantCultureIgnoreCase);
              break;
            case "Email":
              retVal = String.Compare(x.Email, y.Email , StringComparison.InvariantCultureIgnoreCase);
              break;
            case "CreationDate":
              retVal = DateTime.Compare(x.CreationDate, y.CreationDate);
              break;
            case "IsApproved":
              retVal = (x.IsApproved.CompareTo(y.IsApproved));
              break;
          }
          return (retVal * (_reverse ? -1 : 1));
        }

        /// <summary>
        /// Gets the hash code.
        /// </summary>
        /// <param name="obj">The obj.</param>
        /// <returns></returns>
        public int GetHashCode(Project obj) {
          // TODO: Implement this, but it's not necessary for sorting
          return 0;
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -