diff UnitTests/Linq/Model/LinqDataTypes.cs @ 0:f990fcb411a9

Копия текущей версии из github
author cin
date Thu, 27 Mar 2014 21:46:09 +0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/UnitTests/Linq/Model/LinqDataTypes.cs	Thu Mar 27 21:46:09 2014 +0400
@@ -0,0 +1,126 @@
+using System;
+using System.Data;
+using System.Data.Linq;
+
+using BLToolkit.DataAccess;
+
+namespace Data.Linq.Model
+{
+	public class LinqDataTypes : IEquatable<LinqDataTypes>, IComparable
+	{
+		public int      ID;
+		public decimal  MoneyValue;
+		public DateTime DateTimeValue;
+		public bool     BoolValue;
+		public Guid     GuidValue;
+		public Binary   BinaryValue;
+		public short    SmallIntValue;
+
+		public override bool Equals(object obj)
+		{
+			return Equals(obj as LinqDataTypes);
+		}
+
+		public bool Equals(LinqDataTypes other)
+		{
+			if (ReferenceEquals(null, other)) return false;
+			if (ReferenceEquals(this, other)) return true;
+			return
+				other.ID                   == ID            &&
+				other.MoneyValue           == MoneyValue    &&
+				other.BoolValue            == BoolValue     &&
+				other.GuidValue            == GuidValue     &&
+				other.SmallIntValue        == SmallIntValue &&
+				other.DateTimeValue.Date   == DateTimeValue.Date &&
+				other.DateTimeValue.Hour   == DateTimeValue.Hour &&
+				other.DateTimeValue.Minute == DateTimeValue.Minute &&
+				other.DateTimeValue.Second == DateTimeValue.Second;
+		}
+
+		public override int GetHashCode()
+		{
+			return ID;
+		}
+
+		public int CompareTo(object obj)
+		{
+			return ID - ((LinqDataTypes)obj).ID;
+		}
+
+		public static bool operator == (LinqDataTypes left, LinqDataTypes right)
+		{
+			return Equals(left, right);
+		}
+
+		public static bool operator != (LinqDataTypes left, LinqDataTypes right)
+		{
+			return !Equals(left, right);
+		}
+
+		public override string ToString()
+		{
+			return string.Format("{{{0,2}, {1,7}, {2}, {3,5}, {4}, {5}}}", ID, MoneyValue, DateTimeValue, BoolValue, GuidValue, SmallIntValue);
+		}
+	}
+
+	[TableName("LinqDataTypes")]
+	public class LinqDataTypes2 : IEquatable<LinqDataTypes2>, IComparable
+	{
+		[PrimaryKey]
+		public int       ID;
+		public decimal   MoneyValue;
+		public DateTime? DateTimeValue;
+		[DbType(DbType.DateTime2)]
+		public DateTime? DateTimeValue2;
+		public bool?     BoolValue;
+		public Guid?     GuidValue;
+		public short?    SmallIntValue;
+		public int?      IntValue;
+		public long?     BigIntValue;
+
+		public override bool Equals(object obj)
+		{
+			return Equals(obj as LinqDataTypes2);
+		}
+
+		public bool Equals(LinqDataTypes2 other)
+		{
+			if (ReferenceEquals(null, other)) return false;
+			if (ReferenceEquals(this, other)) return true;
+			return
+				other.ID                         == ID            &&
+				other.MoneyValue                 == MoneyValue    &&
+				other.BoolValue                  == BoolValue     &&
+				other.GuidValue                  == GuidValue     &&
+				other.DateTimeValue.Value.Date   == DateTimeValue.Value.Date &&
+				other.DateTimeValue.Value.Hour   == DateTimeValue.Value.Hour &&
+				other.DateTimeValue.Value.Minute == DateTimeValue.Value.Minute &&
+				other.DateTimeValue.Value.Second == DateTimeValue.Value.Second;
+		}
+
+		public override int GetHashCode()
+		{
+			return ID;
+		}
+
+		public int CompareTo(object obj)
+		{
+			return ID - ((LinqDataTypes2)obj).ID;
+		}
+
+		public static bool operator ==(LinqDataTypes2 left, LinqDataTypes2 right)
+		{
+			return Equals(left, right);
+		}
+
+		public static bool operator !=(LinqDataTypes2 left, LinqDataTypes2 right)
+		{
+			return !Equals(left, right);
+		}
+
+		public override string ToString()
+		{
+			return string.Format("{{{0,2}, {1,7}, {2}, {3,5}, {4}}}", ID, MoneyValue, DateTimeValue, BoolValue, GuidValue);
+		}
+	}
+}