public void Test_Build_Parameters_Uses_Runtime_Type() { var obj2Sql = new ObjectToSql(DataBaseType.SqlServer, true); var hashSet = new HashSet <Employee>(new List <Employee>() { new Employee() { FirstName = "joif", LastName = "dsfi" } }); var data = hashSet.ToList(); if (data.GetType().IsTypeAnIEnumerable()) { if (data is IEnumerable <object> list) { foreach (var item in list) { var parameters = obj2Sql.BuildDbParameterList(item, delegate(string s, object o) { return(new SqlParameter(s, o)); }); Assert.That(parameters != null && parameters.Count == 2); } } } }
private static string HowToUseWithAnonymousObjects() { var obj = new { FirstName = "John", LastName = "Doe" }; var insertSql = new ObjectToSql(DataBaseType.SqlServer).BuildQuery(ActionType.Insert, obj, "Employee"); return(insertSql); }
private static string HowToUseWithDynamicObjects() { dynamic record = new ExpandoObject(); record.FirstName = "John"; record.LastName = "Doe"; var insertSql = new ObjectToSql(DataBaseType.SqlServer).BuildQuery(ActionType.Insert, record, "Employee"); return(insertSql); }
// HOW TO GENERATE SQL private static void HowToUseWithGenericTypesDetailed() { // ## HOW TO USE WITH GENERICS TYPES var actionType = ActionType.Insert; // A enum with the values Insert,Update,Delete,Upsert var databaseType = DataBaseType.SqlServer; // A enum with values of SQLServer,SQLite & more var obj2Sql = new ObjectToSql(databaseType); var insertSql = obj2Sql.BuildQuery <Employee>(actionType); // Additional Overload Methods var insertSql1 = obj2Sql.BuildQuery <Employee>(actionType, "TableName"); var insertSql2 = obj2Sql.BuildQuery(actionType, new Employee()); var insertSql3 = obj2Sql.BuildQuery(actionType, new Employee(), "TableName"); }
// HOW Tstatic O GENERATE DBParameters private static void HowToGenerateDBParameters() { var obj2Sql = new ObjectToSql(DataBaseType.SqlServer); List <DbParameter> dbParameters = obj2Sql.BuildDbParameterList(new Employee(), (s, o) => new SqlParameter(s, o)); }
private static string HowToUseWithGenericObjects() { var insertSql = new ObjectToSql(DataBaseType.SqlServer).BuildQuery(ActionType.Insert, new Employee()); return(insertSql); }