static void AnonymousExportData() { var filename = Guid.NewGuid().ToString() + ".xlsx"; System.IO.File.WriteAllBytes(filename, Properties.Resources.Empty); Random r = new Random(); var items = Enumerable.Range(0, 1000).Select(i => new { Id = i, Name = "Product " + i.ToString(), Category = r.Next(1, 10), IsValid = true }).ToArray(); using (var context = new ExcelContext(filename)) { var item = items[0]; var operate = context.Database.Manager.CreateTable(item.GetType(), DbName.NameOnly("Sheet1$")); context.Executor.Execute(operate); context.Set(item, "[Sheet1$]").AddRange(items); context.Executor.Execute(); } }
//创建名称。 private static DbName CreateName(DbContext context, TableMetadata principal, TableMetadata foreign, ForeignPrincipalPair[] pairs) { var foreignName = $"FK_{foreign.Name}_{principal.Name}_{string.Join("_", pairs.Select(a => a.ForeignKey.Name).ToArray())}_{string.Join("_", pairs.Select(a => a.PrincipalKey.Name).ToArray())}"; var maxlength = context.Configuration.DatabaseFeature.MaxIdentifierLength; if (maxlength.HasValue && foreignName.Length > maxlength.Value) { foreignName = foreignName.Substring(0, maxlength.Value); } return(DbName.NameOnly(foreignName)); }