public MvcActionTextTemplate(MvcAction action, ScriptExtensionsFactory extensionsFactory, FetchFunctionDescriptor fetchFunc, TypeFormatter formatter) { _action = action; _formatter = formatter; _fetchFunc = fetchFunc; _bodyExtensions = extensionsFactory.CreateForActionFunctionBody(action); }
private static void CompileActionImport(ImportManager imports, ControllerContext context, MvcAction actionInfo) { FetchFunctionDescriptor fetchDescriptor = context.FetchFunctionResolver.Resolve(actionInfo.RequestMethod.Name); string funcKey = "fetch-" + fetchDescriptor.FetchModulePath; if (!imports.ContainsImportPath(funcKey)) { imports.AddImport(funcKey, new ImportStatement(context.OutputPath, fetchDescriptor.FetchModulePath, false)); } ImportStatement ajaxImport = imports.GetImportAtPath(funcKey); ajaxImport.AddItem(fetchDescriptor.FunctionName); AddActionImports(imports, actionInfo); TryAddAdditionalImports(imports, context, fetchDescriptor.AdditionalImports); }