public void SetName_XmlEscapeCharactersInName_Expected_ValidationErrorMessageOnNameSet() { IDataListItemModel dataListItemModel = new DataListItemModel("MyDisplayName"); dataListItemModel.DisplayName = "UnitTestWith<>"; Assert.IsTrue(!string.IsNullOrEmpty(dataListItemModel.ErrorMessage)); }
public void SetName_ValidName_Expected_NoValidationErrorMessageOnNameSet() { IDataListItemModel dataListItemModel = new DataListItemModel("MyDisplayName"); dataListItemModel.DisplayName = "UnitTestDisplayName"; Assert.IsTrue(string.IsNullOrEmpty(dataListItemModel.ErrorMessage)); }
public void SetName_InvalidName_Expected_ValidationErrorMessageOnNameSet() { IDataListItemModel dataListItemModel = new DataListItemModel("MyDisplayName"); dataListItemModel.DisplayName = "UnitTestWith&<>"'"; Assert.IsTrue(!string.IsNullOrEmpty(dataListItemModel.ErrorMessage)); }
public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { DataListItemModel itemModel = value as DataListItemModel; if (itemModel != null) { if (itemModel.IsRecordset) { return(string.IsNullOrEmpty(itemModel.DisplayName) ? string.Concat(AutoIdPrefix, "NewRecordSet", AutoIdSufix) : string.Concat(AutoIdPrefix, "RecordSet_", itemModel.DisplayName, AutoIdSufix)); } if (itemModel.IsField) { return(string.IsNullOrEmpty(itemModel.DisplayName) ? string.Concat(AutoIdPrefix, "NewField", AutoIdSufix) : string.Concat(AutoIdPrefix, "Field_", itemModel.DisplayName, AutoIdSufix)); } return(string.IsNullOrEmpty(itemModel.DisplayName) ? string.Concat(AutoIdPrefix, "NewVariable", AutoIdSufix) : string.Concat(AutoIdPrefix, "Variable_", itemModel.DisplayName, AutoIdSufix)); } return(itemModel); }
public static IDataListItemModel CreateDataListModel(string displayname, string description = "", IDataListItemModel parent = null, OptomizedObservableCollection <IDataListItemModel> children = null, bool hasError = false, string errorMessage = "", bool isEditable = true, bool isVisable = true, bool isSelected = false, enDev2ColumnArgumentDirection dev2ColumnArgumentDirection = enDev2ColumnArgumentDirection.None) { IDataListItemModel dataListModel = new DataListItemModel(displayname, dev2ColumnArgumentDirection, description, parent, children, hasError, errorMessage, isEditable, isVisable, isSelected); if (parent != null && !String.IsNullOrEmpty(displayname)) { dataListModel.Name = parent.DisplayName + "()." + displayname; } return(dataListModel); }
public static IDataListItemModel CreateDataListModel(string displayname, string description, enDev2ColumnArgumentDirection dev2ColumnArgumentDirection = enDev2ColumnArgumentDirection.None, IDataListItemModel parent = null, OptomizedObservableCollection <IDataListItemModel> children = null, bool hasError = false, string errorMessage = "", bool isEditable = true, bool isVisable = true, bool isSelected = false) { IDataListItemModel dataListModel = new DataListItemModel(displayname, dev2ColumnArgumentDirection, description, parent, children, hasError, errorMessage, isEditable, isVisable, isSelected); return(dataListModel); }
public DataListModel GetList(Models.View view, List<DataSelectionModel> dataSelections) { Form form = view.Group.Forms.Single(m => m.FormId == view.Group.DefaultFormId); List<Field> columns = new List<Field>(); foreach (Field field in form.Fields.Where(m => m.FieldColumn != null && !m.FieldColumn.Equals(String.Empty)).OrderBy(a => a.FieldOrder)) { Permission permission = view.Permissions.FirstOrDefault(m => m.FieldId == field.FieldId); if (permission == null) { columns.Add(field); } else { if (permission.PermissionTypeId != 0) { columns.Add(field); } } } DataListModel model = new DataListModel { View = view, Form = form, Columns = columns }; RepositoryCompanies repositoryCompanies = new RepositoryCompanies(); DataSelectionModel layer = null; foreach (DataSelectionModel selection in dataSelections) { if (selection.name == form.Name) { layer = selection; break; } } if (layer != null) { foreach (List<string> row in layer.aElements) { DataListItemModel listItem = new DataListItemModel(); for (int i = 0; i < layer.nProperties; i++) { if (!String.IsNullOrEmpty(row[i])) { string upperPropertyName = layer.aPropertiesName[i].ToUpper(); switch (upperPropertyName) { case "ID": int id = 0; int.TryParse(row[i], out id); listItem.ItemId = id; break; case "UNIQUEID": listItem.UniqueId = row[i]; break; case "USERID": listItem.UserId = row[i]; MembershipUser user = Membership.GetUser(new Guid(listItem.UserId)); if (user != null) { listItem.UserName = user.UserName; UserProfile profile = UserProfile.GetUserProfile(user.UserName); Company company = repositoryCompanies.Get(profile.CompanyId); if (company != null) listItem.Company = company.Name; } break; case "DATO": DateTime dt = DateTime.Now; DateTime.TryParse(row[i], culture, DateTimeStyles.AssumeLocal, out dt); listItem.Date = dt; break; default: foreach (Field field in model.Columns) { if (layer.aPropertiesName[i].ToUpper() == field.FieldColumn.ToUpper()) { if (field.FieldTypeId == 10) { DateTime dt1 = DateTime.Now; DateTime.TryParse(row[i], culture, DateTimeStyles.AssumeLocal, out dt1); listItem.Data.Add(field.FieldColumn, dt1.ToString("d", culture)); } else { listItem.Data.Add(field.FieldColumn, row[i]); } break; } } break; } } } model.ListItemModels.Add(listItem); } } return model; }
public DataListModel GetList(View view, string userId) { RepositoryCompanies repositoryCompanies = new RepositoryCompanies(); List<Field> columns = new List<Field>(); Form form = view.Group.Forms.Single(m => m.FormId == view.Group.DefaultFormId); string select = ""; bool fId = false; bool fUserId = false; bool fUniqueId = false; bool fDato = false; foreach (Field field in form.Fields.Where(a => a.FieldColumn != null && !a.FieldColumn.Equals(String.Empty)).OrderBy(b => b.FieldOrder)) { Permission permission = view.Permissions.FirstOrDefault(a => a.FieldId == field.FieldId); if (permission == null || permission.PermissionTypeId != 0) { columns.Add(field); switch (field.FieldColumn.ToUpper()) { case "ID": select = select + "," + field.FieldColumn; fId = true; break; case "UNIQUEID": select = select + "," + field.FieldColumn; fUniqueId = true; break; case "USERID": select = select + "," + field.FieldColumn; fUserId = true; break; case "DATO": select = select + "," + field.FieldColumn; fDato = true; break; default: if (field.FieldTypeId == 16) { select = select + "," + field.FieldColumn + ".STAsText() AS " + field.FieldColumn; } else { select = select + "," + field.FieldColumn; } break; } } } if (!fUniqueId) select = select + ",UniqueId"; if (!fUserId) select = select + ",UserId"; if (!fDato) select = select + ",Dato"; if (!fId) select = select + ",Id"; select = "SELECT " + select.Substring(1); DataListModel model = new DataListModel { View = view, Form = form, Columns = columns }; DataTable dt = new DataTable(); using (SqlConnection connection = new SqlConnection(form.ResourceName)) { SqlCommand command = connection.CreateCommand(); command.CommandText = select+" FROM " + form.ClassName; if (!String.IsNullOrEmpty(userId)) { command.CommandText = command.CommandText + " WHERE UserId = '" + userId + "'"; } command.CommandText += " order by dato desc"; SqlDataAdapter adapter = new SqlDataAdapter(command); adapter.Fill(dt); } Dictionary<string, UserInfo> users = new Dictionary<string, UserInfo>(); foreach (DataRow row in dt.Rows) { DataListItemModel listItem = new DataListItemModel(); for (int i = 0; i < dt.Columns.Count; i++) { if (!row.IsNull(i)) { string propertyName = dt.Columns[i].ColumnName; string propertyNameUpper = propertyName.ToUpper(); switch (propertyNameUpper) { case "ID": listItem.ItemId = (int)row[i]; if(fId) listItem.Data.Add(propertyName, row[i].ToString()); break; case "UNIQUEID": listItem.UniqueId = (string)row[i]; if (fUniqueId) listItem.Data.Add(propertyName, row[i].ToString()); break; case "USERID": if (row[i] != DBNull.Value && row[i].ToString() != "") { listItem.UserId = (string)row[i]; if (fUserId) listItem.Data.Add(propertyName, row[i].ToString()); UserInfo user = null; if (users.ContainsKey(listItem.UserId)) user = users[listItem.UserId]; else { MembershipUser user1 = Membership.GetUser(new Guid(listItem.UserId)); if (user1 != null) { user = new UserInfo(); user.UserName = user1.UserName; UserProfile profile = UserProfile.GetUserProfile(user1.UserName); if (profile != null) { Company company = repositoryCompanies.Get(profile.CompanyId); if (company != null) { user.CompanyName = company.Name; } } } users.Add(listItem.UserId, user); } if (user != null) { listItem.UserName = user.UserName; listItem.Company = user.CompanyName; } } break; case "DATO": listItem.Date = (DateTime)row[i]; if (fDato) listItem.Data.Add(propertyName, row[i].ToString()); break; default: listItem.Data.Add(propertyName, row[i].ToString()); break; } } } model.ListItemModels.Add(listItem); } return model; }