public async Task <IActionResult> GenerateDockerfile([FromQuery] string deploymentPackageName, [FromQuery] string projectName, [FromQuery] string projectLocation, [FromQuery] byte type) { // Hard-coded!!! string dockerfileTemplateName = type == 1 ? "DockerfileTemplateForWebApp" : "DockerfileTemplateForFunctions"; _deploymentRepository.AddRepository(deploymentPackageName, projectName); var dockerTemplateFilePath = Path.Combine(_webHostEnvironment.ContentRootPath, "Templates"); using (var fileProvider = new PhysicalFileProvider(dockerTemplateFilePath)) { var stream = fileProvider.GetFileInfo(dockerfileTemplateName).CreateReadStream(); using (var streamReader = new StreamReader(stream)) { var dockerTemplateContent = streamReader.ReadToEnd(); dockerTemplateContent = type == 1 ? GenerateDockerfileForWebApp(dockerTemplateContent, projectLocation) : GenerateDockerfileForFunctions(dockerTemplateContent, projectLocation); using (var outputStream = new MemoryStream()) { using (var streamWriter = new StreamWriter(outputStream)) { await streamWriter.WriteAsync(dockerTemplateContent); streamWriter.Flush(); return(File(outputStream.ToArray(), "text/plain")); } } } } }