public async Task CreateGatewaysFact() { var output = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); var ns = default(Namespace); // Table Data Gateway ns = new Namespace(NAMESPACE, @"TableDataGateways"); var context = new TableDataGatewaysContext { Namespace = new Namespace(NAMESPACE, ns.Child), Imports = new[] { "System.Data.Common", "kkkkkkaaaaaa.Data.Common" }, TypeName = new TypeName(@"", @"", @"Gateway"), Inherits = "GatewayBase", OutputPath = Path.Combine(output, ns.Child), }; // Entities ns = new Namespace(NAMESPACE, @"Aggregates"); context.Entities = await new Entities(new EntitiesContext { Namespace = ns, Imports = new [] { @"System", }, TypeName = new TypeName(@"", @"", @"Entity"), Inherits = @"", OutputPath = Path.Combine(output, ns.Child), }).CreateEntitiesAsync(); var gateways = new TableDataGateways(context); await gateways.CreateGatewaysAsync(); TextTemplatingProcess.StartExplorer(output); }