/// <summary> /// génère la chaine qui contient le code de création du ClassWriter. /// </summary> private string GenerateCodeWriter(TemplateItem ti) { string mainCode = string.Empty; eParserType typ = eParserType.None; #if DEBUG typ = eParserType.File; #else typ = eParserType.Memory; #endif ITemplateParser Parser = new ParserFactory().GetParser(eParserType.File); bool bResult = Parser.GenerateCode(ti.TemplateFile); if (bResult) //le parsing est ok { string classCode = new ResourceHelper().ReadResource("ReflectionStudio.Core", "ReflectionStudio.Core.Generator.ClassWriter.ClassWriterExtended.txt"); //on remplace ClassWriter<#=DOM=#> pour avoir une classe du type "ClassWriter + BO + Base" classCode = classCode.Replace("<#DOM#>", ti.OutputFilePrefix + ti.OutputFileSufix); //on remplace avec le code pour la fonction generate() classCode = classCode.Replace("<#CODE#>", Parser.GetCode()); #if DEBUG StreamWriter sw = File.CreateText(AppDomain.CurrentDomain.BaseDirectory + "\\ClassWriterResult.txt"); sw.Write(classCode); sw.Close(); #endif return(classCode); } else { return(null); } }