public void SeedData(CompanyEntities db) { Console.WriteLine("Seeding managers"); //Add managers if (this.managerIds == null) { this.managerIds = db.Employees.Select(employee => employee.EmployeeId).ToList(); } db.Configuration.AutoDetectChangesEnabled = true; var counter = 0; foreach (var employee in db.Employees) { if (Utilities.Instance.GenerateRandomInteger(1, 100) < 95) { var managerId = GetManager(db); employee.ManagerId = managerId; } if (counter % 100 == 0) { Console.Write("."); } counter++; } db.SaveChanges(); Console.WriteLine("Managers seeded!"); }
public void SeedData(CompanyEntities db) { Console.WriteLine("Seeding projects"); if (this.employees == null) { this.employees = db.Employees.ToList(); } for (int i = 0; i < numberOfRecordsToSeed; i++) { var projectName = Utilities.Instance.GenerateRandomString(MinCharsProjectName, MaxCharsProjectName); var newProject = new Project() { Name = projectName }; db.Projects.Add(newProject); if (i % 100 == 0) { Console.Write("."); db.SaveChanges(); } } Console.WriteLine("Projects seeded!"); db.SaveChanges(); }
public void SeedData(CompanyEntities db) { Console.WriteLine("Seeding employees"); if (this.departmentIds == null) { this.departmentIds = db.Departments.Select(department => department.DepartmentId).ToList(); } for (int i = 0; i < numberOfRecordsToSeed; i++) { string firstName = Utilities.Instance.GenerateRandomString(MinCharLengthOfName, MaxcharLengthOfName); string lastName = Utilities.Instance.GenerateRandomString(MinCharLengthOfName, MaxcharLengthOfName); int salary = Utilities.Instance.GenerateRandomInteger(MinSalary, MaxSalary); int departmentId = GetDepartmentId(db); var newEmployee = new Employee() { FirstName = firstName, LastName = lastName, YearSalary = salary, DepartmentId = departmentId }; db.Employees.Add(newEmployee); if (i % 100 == 0) { Console.Write("."); db.SaveChanges(); } } db.SaveChanges(); Console.WriteLine("Employees seeded"); }
public void SeedData(CompanyEntities db) { string newDepartmentName = string.Empty; for (int i = 0; i < this.numberOfRecordsToSeed; i++) { while (true) { newDepartmentName = Utilities.Instance.GenerateRandomString(MinCharLengthOfDepartment, MaxcharLengthOfDepartment); if (!db.Departments.Any(department => department.Name.Equals(newDepartmentName))) { break; } else { newDepartmentName = Utilities.Instance.GenerateRandomString(MinCharLengthOfDepartment, MaxcharLengthOfDepartment); } } var newDepartment = new Department() { Name = newDepartmentName }; db.Departments.Add(newDepartment); if (i % 100 == 0) { db.SaveChanges(); } } db.SaveChanges(); }
private void AddReports(CompanyEntities db, int id) { var numberOfReports = Utilities.Instance.GenerateRandomInteger(minNumberOfRecords, maxNumberOfRecords); for (int i = 0; i < numberOfReports; i++) { var text = Utilities.Instance.GenerateRandomString(50, 100); var timeOfReport = DateTime.Now; var newReport = new Report() { Text = text, TimeOfReport = timeOfReport, EmployeeId = id }; db.Reports.Add(newReport); } db.SaveChanges(); }
static void Main() { //NOTE!!! I am using SQL server. //If you are using SQLEXPRESS, please change the conection string. var db = new CompanyEntities(); db.Configuration.AutoDetectChangesEnabled = false; List<IDataSeeder> seeders = new List<IDataSeeder>(); seeders.Add(new DepartmentSeeder(100)); seeders.Add(new EmployeeSeeder(5000)); seeders.Add(new ManagerSeeder()); seeders.Add(new ReportSeeder(25, 75)); //between 50 per employee seeders.Add(new ProjectSeeder(1000)); foreach (var seeder in seeders) { seeder.SeedData(db); } db.SaveChanges(); }
public void SeedData(CompanyEntities db) { Console.WriteLine("Seeding reports"); if (this.employeeIds == null) { this.employeeIds = db.Employees.Select(employee => employee.EmployeeId).ToList(); } var counter = 0; foreach (var id in employeeIds) { AddReports(db, id); if (counter % 100 == 0) { Console.Write("."); } counter++; } Console.WriteLine("Reports seeded"); }
private int GetManager(CompanyEntities db) { var selectedManagerId = this.managerIds[Utilities.Instance.GenerateRandomInteger(0, this.managerIds.Count - 1)]; return selectedManagerId; }
private int GetDepartmentId(CompanyEntities db) { var selectedDepartmentId = this.departmentIds[Utilities.Instance.GenerateRandomInteger(0, this.departmentIds.Count - 1)]; return selectedDepartmentId; }