Example #1
0
        public IActionResult Code(string org, string service)
        {
            List <AltinnCoreFile> altinnCoreFiles = _repository.GetImplementationFiles(org, service);
            CodeCompilationResult compResult      = _compilation.CreateServiceAssembly(org, service, false, null, false);

            // Check to see if any of the files has compiliation errors or warnings
            foreach (AltinnCoreFile coreFile in altinnCoreFiles)
            {
                if (compResult.CompilationInfo != null &&
                    compResult.CompilationInfo.Exists(c => c.FileName.ToLower().Equals(coreFile.FileName.ToLower()) && c.Severity.Equals("Error")))
                {
                    coreFile.FileStatus = ServiceLibrary.Enums.AltinnCoreFileStatusType.Error;
                }
                else if (compResult.CompilationInfo != null &&
                         compResult.CompilationInfo.Exists(c => c.FileName.ToLower().Equals(coreFile.FileName.ToLower()) && c.Severity.Equals("Warning")))
                {
                    coreFile.FileStatus = ServiceLibrary.Enums.AltinnCoreFileStatusType.Warning;
                }
                else
                {
                    coreFile.FileStatus = ServiceLibrary.Enums.AltinnCoreFileStatusType.OK;
                }
            }

            string filePath = _settings.GetModelPath(org, service, AuthenticationHelper.GetDeveloperUserName(_httpContextAccessor.HttpContext)) + _settings.ServiceModelFileName;

            ViewBag.HasDataModel      = System.IO.File.Exists(filePath);
            ViewBag.CompilationResult = compResult;
            return(View(altinnCoreFiles));
        }