예제 #1
0
 public static QueryModelInfo <TModel, TParameter> GetModelInfo <TModel, TParameter>(
     this IParameterCreator <TModel, TParameter> creator, TModel model)
     where TParameter : DbParameter
 {
     return(new QueryModelInfo <TModel, TParameter>(model)
     {
         ParameterCreator = creator
     });
 }
        public virtual IParameterCreator Deserialize(XmlNode node)
        {
            IParameterCreator param = null;
            var serializer          = new XmlSerializer(Type.GetType(_namespace + "." + node.Name));

            using (var reader = new XmlTextReader(new StreamReader(new MemoryStream(Encoding.UTF8.GetBytes(node.OuterXml)))))
            {
                if (serializer.CanDeserialize(reader))
                {
                    param = (IParameterCreator)serializer.Deserialize(reader);
                }
            }
            return(param);
        }
        public SingleParameterTester([NotNull] ILogger logger,
                                     [NotNull] IResultMessageBuilder builder,
                                     [NotNull] IParameterCreator parameterCreator,
                                     [NotNull] IInstanceCreator instanceCreator)
        {
            Guard.ArgumentNotNull(logger,
                                  nameof(logger));
            Guard.ArgumentNotNull(builder,
                                  nameof(builder));
            Guard.ArgumentNotNull(parameterCreator,
                                  nameof(parameterCreator));
            Guard.ArgumentNotNull(instanceCreator,
                                  nameof(instanceCreator));

            _logger           = logger;
            _builder          = builder;
            _parameterCreator = parameterCreator;
            _creator          = instanceCreator;
        }