static void Main() { MicronConfig config = new MicronConfig() { DatabaseName = "books_db", }; MicronDbContext.AddConnectionSetup(config); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); }
/// <summary> /// Converts a DataTable to a list with generic objects /// </summary> /// <typeparam name="T">Generic object</typeparam> /// <param name="datatable">DataTable</param> /// <returns>List with generic objects</returns> public static IEnumerable <T> MapToList <T>(DataTable datatable) where T : class, new() { try { List <T> list = new List <T>(); foreach (var row in datatable.AsEnumerable()) { T obj = new T(); foreach (var prop in obj.GetType().GetProperties()) { try { PropertyInfo propertyInfo = obj.GetType().GetProperty(prop.Name); MicronDbContext db = (MicronDbContext)datatable.ExtendedProperties["db"]; if (prop.GetValue(obj, null) != null && prop.GetValue(obj, null).GetType() == typeof(DateTime)) { propertyInfo.SetValue(obj, row[prop.Name], null); } else if (prop.PropertyType == typeof(MicronDbContext)) { propertyInfo.SetValue(obj, db, null); } else { propertyInfo.SetValue(obj, Convert.ChangeType(row[prop.Name], propertyInfo.PropertyType), null); } } catch (Exception err) { continue; } } list.Add(obj); } return(list); } catch { return(null); } }
static void Main() { //create database connection to my_database MicronConfig setUp = new MicronConfig() { DatabaseName = "my_database" }; MicronDbContext.AddConnectionSetup(setUp); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new frmLogin()); }
static void Main() { MicronConfig config = new MicronConfig() { DatabaseName = "ngdu", Host = "localhost", User = "******", Password = "", Port = "3306", }; MicronDbContext.AddConnectionSetup(config); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Auth()); }
public static IEnumerable <T> For <T>(this IEnumerable <T> me, IMicron micron) { if (micron == null) { return(new List <T>()); } MicronDbContext db = (MicronDbContext)GetPropValue(micron, "DefaultDBContext"); var table1 = db.GetTableName(typeof(T)); //order var table2 = db.GetTableName(micron.GetType()); //customer List <T> ret = new List <T>(); try { //get relationship property var relationships = db.Relationships.AsEnumerable() .Where(r => r.Field <string>("REFERENCED_TABLE_NAME").ToLower() == table2.ToLower() && r.Field <string>("TABLE_NAME").ToLower() == table1.ToLower() )?.CopyToDataTable(); var table1Col = relationships.Rows[0]["COLUMN_NAME"].ToString(); var table2Col = relationships.Rows[0]["REFERENCED_COLUMN_NAME"].ToString(); var val = GetPropValue(micron, table2Col); { } foreach (var item in me) { var val2 = GetPropValue(item, table1Col); //filter here if (val2.ToString() == val.ToString()) { ret.Add(item); } } return(ret); } catch (Exception) { return(new List <T>()); } }
static void Main() { MicronConfig config = new MicronConfig() { DatabaseName = "WorkAssistant", Host = "127.0.0.1", User = "******", Password = "******", Port = "3306" }; MicronDbContext db = new MicronDbContext("config"); MicronDbContext.AddConnectionSetup(config); var micron = new MicronDbContext(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); TestDbContext dbContext = new TestDbContext(); Application.Run(new WorkAssistant()); }
static void Main(string[] args) { string mode = "model-first"; Environment.CurrentDirectory = AppDomain.CurrentDomain.BaseDirectory; ConsoleColor defaultBgCol = Console.BackgroundColor; ConsoleColor defaultFore = Console.ForegroundColor; if (args.Length == 0) { Console.WriteLine(Resources.asciArt_txt); Console.WriteLine("A PRODUCT OF BUNIFU \n________________________________________\n\n\n"); Console.BackgroundColor = ConsoleColor.DarkRed; Console.WriteLine("No project file added"); } var projectPath = args[0]; if (File.Exists(projectPath) && projectPath.ToLower().EndsWith(".csproj")) { MicronConfig config = new MicronConfig(); FileInfo projectPathInfo = new FileInfo(projectPath.Trim()); string[] ignoreList = new string[] { }; string ignoreFile = Path.Combine(projectPathInfo.DirectoryName, "micron_ignore.txt"); string modeFile = Path.Combine(projectPathInfo.DirectoryName, "micron_mode.txt"); if (args.Length > 1) { mode = args[1]; File.WriteAllText(modeFile, mode); } else { mode = File.ReadAllText(modeFile); } if (File.Exists(ignoreFile)) { ignoreList = File.ReadAllLines(ignoreFile); } Console.WriteLine("Project File: " + projectPathInfo.FullName + "\n\n"); string nameSpace = "Data.Models"; if (!File.Exists(ignoreFile)) { File.WriteAllText(ignoreFile, ""); Console.WriteLine(Resources.asciArt_txt); Console.WriteLine("A PRODUCT OF BUNIFU \n________________________________________\n\n\n"); } else { bool found = false; Console.Write("Fetching connections: "); //parse file foreach (var file in projectPathInfo.Directory.GetFiles("*.cs", SearchOption.AllDirectories)) { Console.Write("#"); //look for MicronConfig() string source = File.ReadAllText(file.FullName); source = source.Replace(" ", ""); source = source.Replace("\n", ""); if (source.Contains("MicronConfig()")) { if (source.Contains("DatabaseName=\"")) { found = true; Kuto k = new Kuto(source); k = k.Extract("MicronConfig()", ""); k = k.Extract("{", "}"); if (k.Contains("DatabaseName")) { config.DatabaseName = k.Extract("DatabaseName=\"", "\"").ToString(); } if (k.Contains("Host")) { config.Host = k.Extract("Host=\"", "\"").ToString(); } if (k.Contains("Password")) { config.Password = k.Extract("Password=\"", "\"").ToString(); } if (k.Contains("User")) { config.User = k.Extract("User=\"", "\"").ToString(); } if (k.Contains("Locality")) { config.Locality = k.Extract("Locality=\"", "\"").ToString(); } break; } } System.Threading.Thread.Sleep(300); } if (!found) { Console.WriteLine(); Console.WriteLine(); Console.BackgroundColor = ConsoleColor.DarkRed; Console.WriteLine("No Micron Configuration found"); return; } Console.WriteLine(); Console.WriteLine(); Console.WriteLine("Micron Configuration found:"); Console.BackgroundColor = ConsoleColor.DarkGreen; MicronLogger.Log(config); Console.BackgroundColor = defaultBgCol; } MicronDbContext db = new MicronDbContext(config); Console.BackgroundColor = ConsoleColor.DarkBlue; Console.WriteLine("Connected.... Generating DB Models for " + config.DatabaseName); Console.BackgroundColor = defaultBgCol; if (mode == "database-first") { Console.WriteLine("Executng database-first"); //generate model here db.GenerateModels(projectPath.Trim(), nameSpace, ignoreList); } else { //model first Console.WriteLine("Executng model-first"); db.GenerateSchemaFromModels(projectPath.Trim(), ignoreList); } Console.WriteLine(); Console.ForegroundColor = ConsoleColor.DarkGreen; Console.WriteLine("Successfully Completed :)"); Console.BackgroundColor = defaultBgCol; Console.WriteLine(); Console.WriteLine(); Console.ForegroundColor = defaultFore; return; } Console.BackgroundColor = ConsoleColor.DarkRed; Console.WriteLine("No csProj found"); }