public virtual EmptyDerived ToEmptyDerived()
        {
            EmptyDerived that = this as EmptyDerived;

            if (that != null && this.GetType().IsEquivalentTo(typeof(EmptyDerived)))
            {
                return(that);
            }

            return(EmptyDerived.CreateWithIdentity(
                       identity: this.Identity));
        }
        public void EmptyDerivedConstruction()
        {
            var derivedEmpty = EmptyDerived.Create();

            Assert.NotNull(derivedEmpty);
        }