public void T4GeneratorCSharpTest() { var generator = new T4Generator(); var result = generator.Generate(model); Console.WriteLine(result); }
protected override string Generate(string modelContent, string namspaceName) { var model = JsonModelReader.Read(modelContent); var fullModel = new Model { Entities = model, NamespaceName = namspaceName }; var generator = new T4Generator(); return(generator.Generate(fullModel)); }
protected override byte[] GenerateCode(string inputFileName, string inputFileContent) { var entities = JsonModelReader.Read(inputFileContent); var model = new Model { Entities = entities, NamespaceName = FileNamespace }; var generator = new T4Generator(); var outContent = generator.Generate(model); return(Encoding.UTF8.GetBytes(outContent)); }
static public void Analisys(string analisysProjectPath, string outGraphPath) { AnalisysCode analisys = new AnalisysCode("FieldBase"); //путь к анализируемому csproj файлу string projectPath = analisysProjectPath; //по указанному пути получаем проджект MSBuildWorkspace msWorkspace = MSBuildWorkspace.Create(); var Project = msWorkspace.OpenProjectAsync(projectPath).Result; analisys.ProjectAnalysis(Project); var diagnostics = msWorkspace.Diagnostics; foreach (var diagnostic in diagnostics) { Console.WriteLine(diagnostic.Message); } var entityInfos = analisys.entityInfos; T4Generator t = new T4Generator(entityInfos); String tText = t.TransformText(); Console.WriteLine(tText); System.IO.File.WriteAllText(outGraphPath, tText); foreach (var a in analisys.entityInfos) { Console.WriteLine(); Console.WriteLine(); Console.WriteLine(a.className); Console.WriteLine(a.baseClassName); foreach (var b in a.lFieldInfo.Keys) { Console.WriteLine(b + " " + a.lFieldInfo[b].TypeField); foreach (var c in a.lFieldInfo[b].lParamInfo) { Console.WriteLine(c.FieldName + " " + c.FieldType + " " + c.ParamName); } Console.WriteLine(); } } }