Expansion ValueObject2 [USERNAME] valueo2
ValueTypeName ValueTypeName ValueTypeName PropertyType1 PropertyType1 string PropertyName1 PropertyName1 value1 PropertyType2 PropertyType2 string PropertyName2 PropertyName2 value2 { public $ValueTypeName$($PropertyType1$ $PropertyName1$, $PropertyType2$ $PropertyName2$) { this.$PropertyName1$ = $PropertyName1$; this.$PropertyName2$ = $PropertyName2$; } public $PropertyType1$ $PropertyName1$ { get; } public $PropertyType2$ $PropertyName2$ { get; } public override int GetHashCode() { unchecked { var hash = 17; hash = hash * 23 + this.$PropertyName1$?.GetHashCode() ?? 0; hash = hash * 23 + this.$PropertyName2$?.GetHashCode() ?? 0; return hash; } } public override bool Equals(object obj) { return this.Equals(obj as $ValueTypeName$); } public bool Equals($ValueTypeName$ obj) { if (ReferenceEquals(obj, null)) { return false; } return obj.$PropertyName1$ == this.$PropertyName1$ && obj.$PropertyName2$ == this.$PropertyName2$; } public static bool operator ==($ValueTypeName$ a, $ValueTypeName$ b) { if (ReferenceEquals(a, null) && ReferenceEquals(b, null)) { return true; } if (ReferenceEquals(a, null) || ReferenceEquals(b, null)) { return false; } return a.Equals(b); } public static bool operator !=($ValueTypeName$ a, $ValueTypeName$ b) { return !(a == b); } }]]>