// // GET: /Demo/ public ActionResult Index(string demoName) { var demoService = new DemoSystem(); var errorMessages = demoService.RunDemo(demoName); TempData["errorMessages"] = errorMessages; return RedirectToRoute("DumpUrl"); }
// // GET: /Dump/ public ActionResult Index() { List<TableModel> tables = new List<TableModel>(); var connectionString = ConfigurationManager.ConnectionStrings["FamilyMembers"].ConnectionString; if(System.IO.File.Exists(HostingEnvironment.MapPath("~/App_Data/FamilyMembersDemo.sdf"))) { using(var connection = new SqlCeConnection(connectionString)) { connection.Open(); var schemaTables = connection.ExecuteMapperQuery("select TABLE_NAME from information_schema.tables"); foreach(var schemaTable in schemaTables) { if(schemaTable.TABLE_NAME == "EdmMetadata") { continue; } var table = new TableModel() { Name = schemaTable.TABLE_NAME }; var columns = connection.ExecuteMapperQuery( "select * from information_schema.columns where TABLE_NAME = @TableName", new {TableName = table.Name}); table.Columns = columns.Select(x => new ColumnModel() { Name = x.COLUMN_NAME, Type = x.DATA_TYPE + "(" + x.CHARACTER_MAXIMUM_LENGTH + ")", Nullable = x.IS_NULLABLE }).ToArray(); var dataSql = "select * from " + table.Name; var command = connection.CreateCommand(); command.CommandText = dataSql; using(var reader = command.ExecuteReader()) { while(reader.Read()) { var data = new object[reader.FieldCount]; reader.GetValues(data); table.Data.Add(data); } } tables.Add(table); } } } var demoSvc = new DemoSystem(); return View(new DumpModel() { Tables = tables, Demos = demoSvc.ListDemos() }); }