|
using System;
using System.Collections;
using ReflectionStudio.Core.Generator.Compilers;
namespace ReflectionStudio.Core.Generator
{
/// <summary>
/// Permet de compiler ClassWriter(ClassWriterExtended) pour g�n�rer le code de la classe m�tier
/// </summary>
public class ClassWriterCompiler
{
private const string _RefAssemblies = @"System.dll;System.Data.dll;VSNetPlus.Core.dll;VSNetPlus.DB.Interface.dll";
private const string _namespace = "VSNetPlus.Core.CompiledTemplates.";
private IMyCompiler _ICompiler = null;
public IMyCompiler Compiler
{
get { return _ICompiler; }
set { _ICompiler = value; }
}
private TemplateItem _ti = null;
public bool CompileClass( string sourceCode, TemplateItem ti )
{
_ICompiler = CompilerProvider.GetCompilerForTemplate(ti);
_ti = ti;
_ICompiler.ClassName = _namespace + "ClassWriter" + _ti.OutputFilePrefix + _ti.OutputFileSufix;
return _ICompiler.Compile(sourceCode, _RefAssemblies);
}
public bool Run( Context context )
{
if (_ICompiler.GetInstanceOfObject(_ICompiler.ClassName))
{
try
{
_ICompiler.InvokeMember("Initialize", new Object[] { context, _ti });
_ICompiler.InvokeMember("Generate", null);
_ICompiler.InvokeMember("UnInitialize", null);
return true;
}
catch
{
return false;
}
}
return false;
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
WPF and MVVM fan, I practice C # in all its forms from the beginning of the NET Framework without mentioning C ++ / MFC and other software packages such as databases, ASP, WCF, Web & Windows services, Application, and now Core and UWP.
In my wasted hours, I am guilty of having fathered C.B.R. and its cousins C.B.R. for WinRT and UWP on the Windows store.
But apart from that, I am a great handyman ... the house, a rocket stove to heat the jacuzzi and the last one: a wood oven for pizza, bread, and everything that goes inside
https://guillaumewaser.wordpress.com/
https://fouretcompagnie.wordpress.com/