public static IItemIssuanceMvoCommand ToCreateOrMergePatchItemIssuanceMvo <TCreateItemIssuanceMvo, TMergePatchItemIssuanceMvo>(this IItemIssuanceMvoState state)
            where TCreateItemIssuanceMvo : ICreateItemIssuanceMvo, new()
            where TMergePatchItemIssuanceMvo : IMergePatchItemIssuanceMvo, new()
        {
            bool bUnsaved = ((IItemIssuanceMvoState)state).IsUnsaved;

            if (bUnsaved)
            {
                return(state.ToCreateItemIssuanceMvo <TCreateItemIssuanceMvo>());
            }
            else
            {
                return(state.ToMergePatchItemIssuanceMvo <TMergePatchItemIssuanceMvo>());
            }
        }