public void Test_Partial() { Writer w = new Writer(@"F:\FileIOTest\test.mig"); PartialWriter pw = w.CreatePartial("student", "学生信息"); List <Student> list = new List <Student>(); for (int i = 0; i < 1000; i++) { list.Add(new Student()); } pw.Append(typeof(Student).Name, list); pw.Commit(); pw = w.CreatePartial("students", "aaa"); for (int i = 0; i < 1000; i++) { pw.Append($"student_{i}", new Student()); } pw.Commit(); w.Commit(); }
public override void ExecConstraints() { PartialWriter pw = writer.CreatePartial("constraint", "约束结构"); // 需要创建约束的表 IEnumerable <string> tableIncludeConstraint = Profile.ImpTables.Where(item => item.IncludeConstraint).Select(item => item.TableName); IEnumerable <Constraint> consts = Domain.Helper.Constraints.GetOwnerConstraints(Profile.SourceConnString) .Where(item => tableIncludeConstraint.Contains(item.TableName)); // 规定约束建立的顺序 List <Constraint> list = new List <Constraint>(); list.AddRange(consts.Where(item => item.Type == "P")); list.AddRange(consts.Where(item => item.Type == "U")); list.AddRange(consts.Where(item => item.Type == "R")); foreach (var c in list) { try { Constraint con = Domain.Helper.Constraints.GetConstraintDetail(Profile.SourceConnString, c.Name); pw.Append(c.Name, con); UpdateMessage($"{c.Name}约束导出成功"); } catch (Exception ex) { UpdateMessage($"{c.Name}约束导出失败:{ex.Message}"); } finally { IncreaseFinishedTask(); } } pw.Commit(); }