Example #1
0
            public override int Compare(ComparePart other)
            {
                if (other == null)
                {
                    throw new ArgumentNullException(paramName: "other");
                }
                StringComparePart scp = other as StringComparePart;

                if (scp == null)
                {
                    return(Part.CompareTo(((IntComparePart)other).Part.ToString()));
                }
                else
                {
                    return(Part.CompareTo(scp.Part));
                }
            }
Example #2
0
            public override int Compare(ComparePart other)
            {
                if (other == null)
                {
                    throw new ArgumentNullException(paramName: "other");
                }
                IntComparePart icp = other as IntComparePart;

                if (icp == null)
                {
                    return(String.Compare(this.Part, ((StringComparePart)other).Part, StringComparison.Ordinal));
                }
                else
                {
                    var otherPart = icp.Part;
                    if (Part.Length > otherPart.Length)
                    {
                        return(1);
                    }
                    if (otherPart.Length > Part.Length)
                    {
                        return(-1);
                    }

                    var arr  = Part.ToArray();
                    var arr2 = otherPart.ToArray();
                    for (int i = 0; i < arr.Length; i++)
                    {
                        int x = int.Parse(arr[i].ToString());
                        int y = int.Parse(arr2[i].ToString());
                        if (x < y)
                        {
                            return(-1);
                        }
                        if (y < x)
                        {
                            return(1);
                        }
                    }
                    return(0);
                }
            }
Example #3
0
 public abstract int Compare(ComparePart other);