public bool Insert(T entity) { var parms = ParametersMapper.RetornaParametros(entity, _entityMap, QueryType.Insert); var insertCommand = QueryMapper.ReturnSqlQuery(_entityMap, QueryType.InsertWithCount); using IDbConnection db = new SqlConnection(_connectionString); return(db.ExecuteScalar <int>(insertCommand, parms, commandType: CommandType.Text) > 0); }
public T GetById(T entity) { var parms = ParametersMapper.RetornaParametros(entity, _entityMap, QueryType.SelectById); var selectByIdCommand = QueryMapper.ReturnSqlQuery(_entityMap, QueryType.SelectById); using IDbConnection db = new SqlConnection(_connectionString); return(db.Query <T>(selectByIdCommand, parms, commandType: CommandType.Text).FirstOrDefault()); }
public T GetById(dynamic id) { DynamicParameters parms = ParametersMapper.RetornaParametroPrimaryKeyUnica <T>(id, _entityMap); var selectAllCommand = QueryMapper.ReturnSqlQuery(_entityMap, QueryType.SelectById); using IDbConnection db = new SqlConnection(_connectionString); return(db.Query <T>(selectAllCommand, parms, commandType: CommandType.Text).FirstOrDefault()); }
public QueryResult Insert(List <T> entityList) { var parms = ParametersMapper.RetornaParametros(entityList, _entityMap, QueryType.InsertMultiple); var insertCommand = QueryMapper.ReturnSqlQuery(entityList.Count, _entityMap, QueryType.InsertMultiple); using IDbConnection db = new SqlConnection(_connectionString); var queryReturn = db.Query(insertCommand, parms, commandType: CommandType.Text).FirstOrDefault(); return(GetSqlTransactionReturn(queryReturn)); }
public ClientGeneratorModel BuildModel() { warnings = new Dictionary <string, string>(); classesNames = new Collection <string>(); classes = new Collection <ClassObject>(); classesObjectsRegistry = new Dictionary <string, ClassObject>(); uriParameterObjects = new Dictionary <string, ApiObject>(); schemaRequestObjects = GetRequestObjects(); schemaResponseObjects = GetResponseObjects(); CleanProperties(schemaRequestObjects); CleanProperties(schemaResponseObjects); var parentClass = new ClassObject { Name = rootClassName, Description = "Main class for grouping root resources. Nested resources are defined as properties. The constructor can optionally receive an URL and HttpClient instance to override the default ones." }; classesNames.Add(parentClass.Name); classes.Add(parentClass); classesObjectsRegistry.Add(rootClassName, parentClass); var classObjects = GetClasses(raml.Resources, null, parentClass, null); SetClassesProperties(classesObjectsRegistry[rootClassName]); var apiRequestObjects = apiRequestGenerator.Generate(classObjects); var apiResponseObjects = apiResponseGenerator.Generate(classObjects); return(new ClientGeneratorModel { Namespace = NetNamingMapper.GetNamespace(raml.Title), RequestObjects = schemaRequestObjects, ResponseObjects = schemaResponseObjects, QueryObjects = queryObjects, HeaderObjects = headerObjects, ApiRequestObjects = apiRequestObjects, ApiResponseObjects = apiResponseObjects, ResponseHeaderObjects = responseHeadersObjects, BaseUriParameters = ParametersMapper.Map(raml.BaseUriParameters), BaseUri = raml.BaseUri, Security = SecurityParser.GetSecurity(raml), Version = raml.Version, Warnings = warnings, Classes = classObjects.Where(c => c.Name != rootClassName).ToArray(), Root = classObjects.First(c => c.Name == rootClassName), UriParameterObjects = uriParameterObjects }); }
public void Insert(T entity, IDbConnection cnn, IDbTransaction trans) { if (cnn == null) { throw new ArgumentNullException(nameof(cnn), "Conexão não pode ser nula"); } if (trans == null) { throw new ArgumentNullException(nameof(trans), "Transação não pode ser nula"); } var parms = ParametersMapper.RetornaParametros <T>(entity, _entityMap, QueryType.Insert); var insertCommand = QueryMapper.ReturnSqlQuery <T>(_entityMap, QueryType.Insert); cnn.Query(insertCommand, parms, trans, commandType: CommandType.Text); }
public void should_map_paremeters() { var dynRaml = new Dictionary <string, object>(); dynRaml.Add("type", "string"); dynRaml.Add("displayName", "ParameterName"); dynRaml.Add("description", "this is the description"); var parameters = new Dictionary <string, Parameter> { { "one", new ParameterBuilder().Build(dynRaml) } }; var generatorParameters = ParametersMapper.Map(parameters); Assert.AreEqual(parameters.Count, generatorParameters.Count()); Assert.AreEqual(parameters.First().Value.Type, generatorParameters.First().Type); Assert.AreEqual("one", generatorParameters.First().Name); Assert.AreEqual(parameters.First().Value.Description, generatorParameters.First().Description); }
public void Delete(T entity, IDbConnection cnn, IDbTransaction trans) { if (cnn == null) { throw new ArgumentNullException("cnn", "Conexão não pode ser nula"); } if (trans == null) { throw new ArgumentNullException("trans", "Transação não pode ser nula"); } var parms = ParametersMapper.RetornaParametros(entity, _entityMap, QueryType.Delete); var deleteSql = QueryMapper.ReturnSqlQuery(_entityMap, QueryType.Delete); using IDbConnection db = new SqlConnection(_connectionString); cnn.Execute(deleteSql, parms, trans, commandType: CommandType.Text); }
public ClientGeneratorModel BuildModel() { warnings = new Dictionary <string, string>(); classesNames = new Collection <string>(); classes = new Collection <ClassObject>(); classesObjectsRegistry = new Dictionary <string, ClassObject>(); uriParameterObjects = new Dictionary <string, ApiObject>(); enums = new Dictionary <string, ApiEnum>(); //new RamlTypeParser(raml.Shapes, schemaObjects, ns, enums, warnings).Parse(); ParseSchemas(); schemaRequestObjects = GetRequestObjects(); schemaResponseObjects = GetResponseObjects(); FixEnumNamesClashing(); //FixTypes(schemaObjects.Values); //FixTypes(schemaRequestObjects.Values); //FixTypes(schemaResponseObjects.Values); ReconstructInheritance(); CleanProperties(schemaObjects); CleanProperties(schemaRequestObjects); CleanProperties(schemaResponseObjects); HandleScalarTypes(); clientMethodsGenerator = new ClientMethodsGenerator(raml, schemaResponseObjects, uriParameterObjects, queryObjects, headerObjects, responseHeadersObjects, schemaRequestObjects, linkKeysWithObjectNames, schemaObjects, enums); var parentClass = new ClassObject { Name = rootClassName, Description = "Main class for grouping root resources. Nested resources are defined as properties. The constructor can optionally receive an URL and HttpClient instance to override the default ones." }; classesNames.Add(parentClass.Name); classes.Add(parentClass); classesObjectsRegistry.Add(rootClassName, parentClass); var classObjects = GetClasses(raml.WebApi.EndPoints, null, parentClass, null, new Dictionary <string, Parameter>()); SetClassesProperties(classesObjectsRegistry[rootClassName]); var apiRequestObjects = apiRequestGenerator.Generate(classObjects); var apiResponseObjects = apiResponseGenerator.Generate(classObjects); //apiObjectsCleaner = new ApiObjectsCleaner(schemaRequestObjects, schemaResponseObjects, schemaObjects); uriParametersGenerator = new UriParametersGenerator(schemaObjects); //CleanNotUsedObjects(classObjects); return(new ClientGeneratorModel { BaseNamespace = baseNamespace, ModelsNamespace = modelsNamespace, SchemaObjects = schemaObjects, RequestObjects = schemaRequestObjects, ResponseObjects = schemaResponseObjects, QueryObjects = queryObjects, HeaderObjects = headerObjects, ApiRequestObjects = apiRequestObjects.ToArray(), ApiResponseObjects = apiResponseObjects.ToArray(), ResponseHeaderObjects = responseHeadersObjects, BaseUriParameters = ParametersMapper.Map(raml.WebApi.BaseUriParameters).ToArray(), BaseUri = raml.WebApi.Servers.Any() ? raml.WebApi.Servers.First() : null, Security = SecurityParser.GetSecurity(raml.WebApi), Version = raml.WebApi.Version, Warnings = warnings, Classes = classObjects.Where(c => c.Name != rootClassName).ToArray(), Root = classObjects.First(c => c.Name == rootClassName), UriParameterObjects = uriParameterObjects, Enums = Enums.ToArray() }); }