public IEnumerable<EditorDataItem> GetEditorDataItems([FromUri] int contextId, [FromBody] dynamic data) { JsonDataSource jsonDataSource = ((JObject)data.config.dataSource).ToObject<JsonDataSource>(); IEnumerable<EditorDataItem> editorDataItems = jsonDataSource.GetEditorDataItems(contextId); CustomLabel customLabel = new CustomLabel((string)data.config.customLabel, contextId); TypeaheadListPicker typeaheadListPicker = new TypeaheadListPicker((string)data.typeahead); // process the labels and then handle any type ahead text return typeaheadListPicker.ProcessEditorDataItems(customLabel.ProcessEditorDataItems(editorDataItems)); }
public IEnumerable<EditorDataItem> GetEditorDataItems([FromUri] int currentId, [FromUri] int parentId, [FromUri] string propertyAlias, [FromBody] dynamic data) { int contextId = currentId; SqlDataSource sqlDataSource = ((JObject)data.config.dataSource).ToObject<SqlDataSource>(); sqlDataSource.Typeahead = (string)data.typeahead; IEnumerable<EditorDataItem> editorDataItems = sqlDataSource.GetEditorDataItems(contextId); CustomLabel customLabel = new CustomLabel((string)data.config.customLabel, contextId, propertyAlias); TypeaheadListPicker typeaheadListPicker = new TypeaheadListPicker((string)data.typeahead); // process the labels and then handle any type ahead text return typeaheadListPicker.ProcessEditorDataItems(customLabel.ProcessEditorDataItems(editorDataItems)); }
public IEnumerable<EditorDataItem> GetEditorDataItems([FromUri] int currentId, [FromUri] int parentId, [FromUri] string propertyAlias, [FromBody] dynamic data) { int contextId = currentId==0?parentId:currentId; DotNetDataSource dotNetDataSource = ((JObject)data.config.dataSource).ToObject<DotNetDataSource>(); dotNetDataSource.Typeahead = (string)data.typeahead; IEnumerable<EditorDataItem> editorDataItems = dotNetDataSource.GetEditorDataItems(contextId).ToList(); CustomLabel customLabel = new CustomLabel((string)data.config.customLabel, contextId, propertyAlias); editorDataItems = customLabel.ProcessEditorDataItems(editorDataItems); // if the typeahead wasn't handled by the custom data-source, then fallback to default typeahead processing if (!dotNetDataSource.HandledTypeahead) { TypeaheadListPicker typeaheadListPicker = new TypeaheadListPicker((string)data.typeahead); editorDataItems = typeaheadListPicker.ProcessEditorDataItems(editorDataItems); } return editorDataItems; }