sorted... dropped the string line inside the program class and it cleared up, final code incase anyone runs into the same problem
namespace MEFProgram
{
class Program
{
[Import()]
string GetMessage { get; set; }
static void Main(string[] args)
{
Program obj = new Program();
obj.Compose();
}
void Compose()
{
AssemblyCatalog catalog = new AssemblyCatalog(Assembly.GetExecutingAssembly());
CompositionContainer container = new CompositionContainer(catalog);
container.ComposeParts(this);
Console.WriteLine(GetMessage);
Console.ReadLine();
}
}
}