public override T Create <T>(DbDataReaderContext ctx)
        {
            var workflowName   = ctx.GetString("WorkflowName");
            var worflowVersion = ctx.GetInt32("WorkflowVersion");

            var result = _factory.CreateNewWorkflow(workflowName, worflowVersion.Value, string.Empty, null);

            return((T)(object)result);
        }
        internal override void Map <T>(DbDataReaderContext ctx, T result)
        {
            base.Map <T>(ctx, result);

            var w   = (EventByKey)(object)result;
            var txt = ctx.GetString("Datas");

            if (!string.IsNullOrEmpty(txt))
            {
                _factory.Serializer.Populate(w, txt);
            }
        }