public void Transform(TransformationContext context)
        {
            var gen = new SqlServerScriptGenerator();
            gen.TargetSystem = context.TargetSystem;
            gen.DataSchema = context.DataSchema;

            var accessor = new SimpleXmlValueAccessor(context.TransformationElement, DataSchemaProject.TargetNamespace);
            gen.DatabaseSchemaName = accessor.GetString("DatabaseSchemaName");

            var docGenName = accessor.GetStringOrDefault("ScriptDocumentGenerator");
            if (!string.IsNullOrEmpty(docGenName))
            {
                gen.ScriptDocumentGenerator = context.DocGenFactory.Create(docGenName);
            }

            var outputFilePath = accessor.GetStringOrDefault("OutputFile");
            using (FileStream stream = new FileStream(outputFilePath, FileMode.Create))
            {
                gen.Generate(stream);
            }
        }
Exemple #2
0
 private void GenerateScript(DataSchema dataSchema)
 {
     TargetSystem targetSystem = dataSchema.TargetSystems[TargetSystemNameForScript];
     SqlServerScriptGenerator gen = new SqlServerScriptGenerator();
     gen.TargetSystem = targetSystem;
     gen.DataSchema = dataSchema;
     using (FileStream stream = new FileStream(SqlScriptFilePath, FileMode.Create))
     {
         gen.Generate(stream);
     }
 }