public override bool Equals(object obj)
        {
            var casted = obj as VersionsJoinTableRangeComponentTestEntity;

            if (casted == null)
            {
                return(false);
            }
            if (Id != casted.Id)
            {
                return(false);
            }
            if (Component1 == null)
            {
                if (casted.Component1 != null)
                {
                    return(false);
                }
            }
            else if (!Component1.Equals(casted.Component1))
            {
                return(false);
            }
            if (Component2 == null)
            {
                if (casted.Component2 != null)
                {
                    return(false);
                }
            }
            else if (!Component2.Equals(casted.Component1))
            {
                return(false);
            }
            if (Component3 == null)
            {
                if (casted.Component3 != null)
                {
                    return(false);
                }
            }
            else if (!Component3.Equals(casted.Component1))
            {
                return(false);
            }

            return(true);
        }