/// <summary> /// Indexes the specified process name. /// </summary> /// <param name="processName">Name of the process.</param> /// <param name="name">The name.</param> /// <returns>ActionResult.</returns> public ActionResult Index(string processName, string name) { var listType = GetListType(ref processName); var methodName = string.Format(CultureInfo.InvariantCulture, "Get{0}List", processName); var list = (IInfoList)MethodCaller.CallFactoryMethod(listType, methodName, "", 0, 10, null, FilterDescriptor.GetFilterExpression(null)); var columns = new ColumnCollection(); var baseType = list.GetType().BaseType; if (baseType != null) { var itemType = baseType.GetGenericArguments()[1]; columns.AddColumns(itemType); } var listViewModel = new ListViewModel {Columns = columns, List = new List<dynamic>()}; foreach (var item in list) listViewModel.List.Add(item); listViewModel.OriginalList = list; return View(listViewModel); }
public void Test_AddColumns_1() { _columns.AddColumns("a"); Assert.Equal(1, _columns.Count); Assert.Equal("a", _columns[0].Name); }
/// <summary> /// 设置列名 /// </summary> /// <param name="columns">列名</param> /// <param name="tableAlias">表别名</param> public void Select(string columns, string tableAlias = null) { _columns.AddColumns(columns, tableAlias); }
/// <summary> /// Adds the columns. /// </summary> /// <param name="columns">The columns.</param> /// <param name="itemType">Type of the item.</param> /// <param name="owner">The owner.</param> /// <param name="prefix">The prefix.</param> /// <param name="tableName">Name of the table.</param> /// <param name="forFilter">if set to <c>true</c> [for filter].</param> /// <param name="displayColumns">The display columns.</param> public void AddColumns(ColumnCollection columns, Type itemType, IPageableList owner, string prefix = null, string tableName = null, bool forFilter = false, string[] displayColumns = null) { columns.AddColumns(itemType, owner, prefix, tableName, forFilter, displayColumns); }
private IEnumerable<IColumnItem> GetFullColumnList(Type itemType, List<string> hiddenProps = null) { var result = new ColumnCollection(); result.AddColumns(itemType, SearchViewModel); if (SearchViewModel.ProcessSystemName == Constants.AccountProcessName) { for (var i = result.Count - 1; i >= 0; --i) { if (result[i].FullName == "Password") result.RemoveAt(i); } } return result; }