Castle.MonoRail.Framework.Helpers.FormHelper.AreEqual C# (CSharp) Méthode

AreEqual() private static méthode

private static AreEqual ( object left, object right ) : bool
left object
right object
Résultat bool
		private static bool AreEqual(object left, object right)
		{
			if (left == null || right == null) return false;

			if (left is string && right is String)
			{
				return String.Compare(left.ToString(), right.ToString()) == 0;
			}

			if (left.GetType() == right.GetType())
			{
				return right.Equals(left);
			}

			IConvertible convertible = left as IConvertible;

			if (convertible != null)
			{
				try
				{
					object newleft = convertible.ToType(right.GetType(), null);
					return (newleft.Equals(right));
				}
				catch(Exception)
				{
					// Do nothing
				}
			}

			return left.ToString().Equals(right.ToString());
		}