Para compilar código em tempo de execução no .NET Framework vamos precisar de utilizar classes dos namespaces System.CodeDom.Compiler, Microsoft.CSharp e o Microsoft.VisualBasic, em que o primeiro providencia a capacidade de compilar código dentro da aplicação e os outros fornecem as classes que estendem a classe CodeDomProvider para fornecer a capacidade de interpretar o código na linguagem especifica.
para isso vamos criar uma classe Helper para colocar um método de compilação de código C#, depois será inserida a capacidade de compilação de código VB.NET, vamos então incluir os namespaces necessários e a classe de Helper.
using System;
using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.Reflection;
using Microsoft.CSharp;
using Microsoft.VisualBasic;
namespace CodingEvolution.Libs.Helpers
{
public class Compiling
{
private Compiling() { }
}
}
Tendo toda a estrutura feita podemos então introduzir um método genérico para qualquer tipo de código.