示例#1
0
        /// <summary>
        /// Determines whether two field values are equal.
        /// </summary>
        /// <param name="original">The original assembly information.</param>
        /// <param name="compareTo">The compare to assembly information.</param>
        /// <param name="fieldName">Name of the field to compare.</param>
        /// <returns>
        ///     <c>true</c> if the field values are identical; otherwise, <c>false</c>.
        /// </returns>
        private bool isFieldEqual(AssemblyInfo original, AssemblyInfo compareTo, string fieldName)
        {
            bool originalContainsField  = original.ContainsField(fieldName);
            bool compareToContainsField = compareTo.ContainsField(fieldName);

            // The original assembly info doesn't contain the field,
            // so any value in the compare to assembly info is valid.
            if (!originalContainsField)
            {
                return(true);
            }
            // Both do not contain the field -> equal
            if (!originalContainsField && !compareToContainsField)
            {
                return(true);
            }
            // Both contain the field -> check if content is equal
            if (originalContainsField && compareToContainsField)
            {
                return(original.GetField(fieldName).Equals(compareTo.GetField(fieldName)));
            }
            // The original assembly info contains the field, but the compare to assembly info doesn't -> NOT equal
            return(false);
        }
示例#2
0
        /// <summary>
        /// Determines whether two field values are equal.
        /// </summary>
        /// <param name="original">The original assembly information.</param>
        /// <param name="compareTo">The compare to assembly information.</param>
        /// <param name="fieldName">Name of the field to compare.</param>
        /// <returns>
        /// 	<c>true</c> if the field values are identical; otherwise, <c>false</c>.
        /// </returns>
        private bool isFieldEqual(AssemblyInfo original, AssemblyInfo compareTo, string fieldName)
        {
            bool originalContainsField = original.ContainsField(fieldName);
            bool compareToContainsField = compareTo.ContainsField(fieldName);

			// The original assembly info doesn't contain the field,
			// so any value in the compare to assembly info is valid.
			if (!originalContainsField)
				return true;
			// Both do not contain the field -> equal
			if (!originalContainsField && !compareToContainsField)
				return true;
			// Both contain the field -> check if content is equal
			if (originalContainsField && compareToContainsField)
				return original.GetField(fieldName).Equals(compareTo.GetField(fieldName));
			// The original assembly info contains the field, but the compare to assembly info doesn't -> NOT equal
			return false;
        }