public object PutCodeToCompile([FromBody] JToken input) { CompiledFormDto result = new CompiledFormDto(); CompileResultContainer compileResult = null; if (input["csharpCode"] == null) { result.ErrorMessages.Add("No Code!"); return(result); } try { compileResult = CompileService.TryCompileAndSearchType(input["csharpCode"].ToString()); result.CompilationSuccessfull = compileResult.CompilationSuccessfull; result.TypeName = compileResult.TypeName; result.ErrorMessages = compileResult.ErrorMessages; if (compileResult.CompilationSuccessfull) { DefaultSchemaFormBuilder builder = new DefaultSchemaFormBuilder(); SchemaFormInfo schemaFormInfo = builder.CreateSchemaForm(compileResult.Type); result.Form = schemaFormInfo.Form; result.Schema = schemaFormInfo.Schema; } } catch (Exception e) { result.ErrorMessages.Add(e.ToString()); } finally { if (compileResult != null) { compileResult.ReleaseResources(); } } return(result); }