public QueryBuilder(CodeWizard codeWizard, QueryBuilderType type) : base(codeWizard) { this._type = type; base.WizardPanels.Add(new SelectDatabasePanel(base.ServiceProvider)); if (type == QueryBuilderType.Select) { base.WizardPanels.Add(new BuildSelectPanel(base.ServiceProvider)); base.WizardPanels.Add(new QueryPreviewPanel(base.ServiceProvider)); base.WizardPanels.Add(new NameSelectMethodPanel(base.ServiceProvider)); this.Text = "SELECT Data Code Wizard"; } else if (type == QueryBuilderType.Delete) { base.WizardPanels.Add(new BuildDeletePanel(base.ServiceProvider)); base.WizardPanels.Add(new QueryPreviewPanel(base.ServiceProvider)); base.WizardPanels.Add(new NameNonQueryMethodPanel(base.ServiceProvider, "MyDeleteMethod")); this.Text = "DELETE Data Code Wizard"; } else if (type == QueryBuilderType.Update) { base.WizardPanels.Add(new BuildUpdatePanel(base.ServiceProvider)); base.WizardPanels.Add(new QueryPreviewPanel(base.ServiceProvider)); base.WizardPanels.Add(new NameNonQueryMethodPanel(base.ServiceProvider, "MyUpdateMethod")); this.Text = "UPDATE Data Code Wizard"; } else if (type == QueryBuilderType.Insert) { base.WizardPanels.Add(new BuildInsertPanel(base.ServiceProvider)); base.WizardPanels.Add(new NameNonQueryMethodPanel(base.ServiceProvider, "MyInsertMethod")); this.Text = "INSERT Data Code Wizard"; } base.Size = new Size(510, 0x198); }
public QueryBuilder(QueryBuilderType Type) { this._type = Type; this._tables = new List <string> (); this._columns = new List <string> (); this._values = new List <string> (); this._wheres = new List <string> (); this._orderby = string.Empty; }
public QueryBuilder(QueryBuilderType Type) { this._type = Type; this._tables = new List<string> (); this._columns = new List<string> (); this._values = new List<string> (); this._wheres = new List<string> (); this._orderby = string.Empty; }
public static IMiniORM MiniORM(this DbConnection connection, MapperType mapperType = MapperType.DEFAULT, QueryBuilderType qbType = QueryBuilderType.DEFAULT, ORMProviderType ormProviderType = ORMProviderType.DEFAULT) { ORM orm = new ORM(connection, mapperType, qbType, ormProviderType); return(orm.Build()); }
public ORM( DbConnection dbConnection, MapperType mapperType = MapperType.DEFAULT, QueryBuilderType qbType = QueryBuilderType.DEFAULT, ORMProviderType ormProviderType = ORMProviderType.DEFAULT) { _dbConnection = dbConnection; _mapperType = mapperType; _qbType = qbType; _ormProviderType = ormProviderType; }
/// <summary> /// ej: /// string t = new FilterQueryBuilder().Select("1,2,3").Table("user").AddLike("nombre", "ju").AddEquals("id", "32").Build(); /// </summary> public QueryBuilder(QueryBuilderType type) { switch (type) { case QueryBuilderType.SELECT: queryBase = "SELECT fields FROM table join filter"; break; case QueryBuilderType.UPDATE: queryBase = "UPDATE table SET fields filter"; break; case QueryBuilderType.DELETE: queryBase = "DELETE FROM table filter"; filterConnector = " OR "; break; case QueryBuilderType.INSERT: queryBase = "INSERT INTO table (fields) VALUES news"; break; } }
public QueryBuilder(QueryBuilderType queryType) { _type = queryType; }
public static string Run(CodeWizard codeWizard, IServiceProvider serviceProvider, CodeDomProvider codeDomProvider, QueryBuilderType type) { IUIService service = (IUIService) serviceProvider.GetService(typeof(IUIService)); IDatabaseManager manager = (IDatabaseManager) serviceProvider.GetService(typeof(IDatabaseManager)); if (codeDomProvider != null) { ICodeGenerator generator = codeDomProvider.CreateGenerator(); if (generator != null) { QueryBuilder form = new QueryBuilder(codeWizard, type); if (service.ShowDialog(form) == DialogResult.OK) { StringWriter w = new StringWriter(); CodeGeneratorOptions o = new CodeGeneratorOptions(); CodeMemberMethod method = new CodeMemberMethod(); method.Name = form.MethodName; IDictionary dictionary = new HybridDictionary(true); foreach (QueryParameter parameter in form.Parameters) { string variableNameFromParameterName = GetVariableNameFromParameterName(parameter.Name); if (dictionary[variableNameFromParameterName] == null) { System.Type typeFromDbType = QueryParameter.GetTypeFromDbType(parameter.Type); method.Parameters.Add(new CodeParameterDeclarationExpression(typeFromDbType, variableNameFromParameterName)); dictionary[variableNameFromParameterName] = string.Empty; } } method.ReturnType = new CodeTypeReference(form.ReturnType); method.Attributes = MemberAttributes.Final; method.Statements.AddRange(BuildConnection((IDataProviderDatabase) form.Database, ((IDataProviderDatabase) form.Database).ConnectionString)); method.Statements.Add(new CodeSnippetStatement(string.Empty)); method.Statements.Add(BuildQueryString(form.Query)); method.Statements.AddRange(BuildCommand((IDataProviderDatabase) form.Database)); method.Statements.Add(new CodeSnippetStatement(string.Empty)); int num = 0; dictionary = new HybridDictionary(true); foreach (QueryParameter parameter2 in form.Parameters) { string str2 = GetVariableNameFromParameterName(parameter2.Name); if (dictionary[str2] == null) { method.Statements.AddRange(BuildDbParameterAssignment((IDataProviderDatabase) form.Database, parameter2.Name, parameter2.Type, codeDomProvider)); num++; dictionary[str2] = string.Empty; } } if (num > 0) { method.Statements.Add(new CodeSnippetStatement(string.Empty)); } if (type == QueryBuilderType.Select) { if (form.ReturnType == typeof(IDataReader)) { method.Statements.AddRange(BuildSelectReturnDataReader()); } else { method.Statements.AddRange(BuildSelectReturnDataSet((IDataProviderDatabase) form.Database)); } } else { method.Statements.AddRange(BuildExecuteNonQuery()); } CodeTypeDeclaration e = new CodeTypeDeclaration("TempType"); e.Members.Add(method); generator.GenerateCodeFromType(e, w, o); string s = w.ToString(); w = new StringWriter(); CodeTypeDeclaration declaration2 = new CodeTypeDeclaration("TempType"); generator.GenerateCodeFromType(declaration2, w, o); string str4 = w.ToString(); w = new StringWriter(); StringReader reader = new StringReader(s); StringReader reader2 = new StringReader(str4); string str5 = reader.ReadLine(); string str6 = reader2.ReadLine(); while (str5 != null) { if (str5 != str6) { w.WriteLine(str5); } else { str6 = reader2.ReadLine(); } str5 = reader.ReadLine(); } return w.ToString(); } } } return string.Empty; }