public static ICHXQueryConverter GetQueryConverter(CHXQueryType queryType) { switch (queryType) { case CHXQueryType.Json: return(new Json.CHXJsonQueryConverter()); default: return(null); } }
public static dynamic Query(string query, string server, CHXQueryType queryType) { var mydb = CHXDatabaseFactory.GetDatabase(server); if (mydb == null) { throw new NullReferenceException($"{server} isimli veri tabanı bulunamadı"); } var convertQuery = mydb.Database.ConvertQuery <string>(query, CHXQueryType.Json); var result = mydb.Database.RunQuery <dynamic>(convertQuery); return(result); }
public override QueryContainer ConvertQuery <T>(T data, CHXQueryType queryType) { var converter = QueryConverter.CHXQueryConverterFactory.GetQueryConverter(queryType); if (converter == null) { throw new Exception("geçerli bir query type değil"); } var result = converter.Convert <T>(data); if (result.AddGeometry) { result.GeometryColumn = Tables.Find(t => t.TableName == result.GeometryTable && t.SchemaName == result.GeometryTableSchema).GeometryColumn.Name; } result.Database = this.Database; return(result); }
public abstract QueryContainer ConvertQuery <T>(T data, CHXQueryType queryType);