public static ColumnInfo GetColumnInfoByAssignmentProperty(string propertyName) { return(propertyName switch { nameof(Assignment.AssignmentId) => DBColumnsStatic.Find(c => c.Name == nameof(Id)), nameof(Assignment.AssignmentCode) => DBColumnsStatic.Find(c => c.Name == nameof(AssignmentCode)), nameof(Assignment.Name) => DBColumnsStatic.Find(c => c.Name == nameof(Name)), nameof(Assignment.ProcessId) => DBColumnsStatic.Find(c => c.Name == nameof(ProcessId)), nameof(Assignment.StatusState) => DBColumnsStatic.Find(c => c.Name == nameof(StatusState)), nameof(Assignment.IsDeleted) => DBColumnsStatic.Find(c => c.Name == nameof(IsDeleted)), nameof(Assignment.IsActive) => DBColumnsStatic.Find(c => c.Name == nameof(IsActive)), nameof(Assignment.DateCreation) => DBColumnsStatic.Find(c => c.Name == nameof(DateCreation)), nameof(Assignment.DateFinish) => DBColumnsStatic.Find(c => c.Name == nameof(DateFinish)), nameof(Assignment.DateStart) => DBColumnsStatic.Find(c => c.Name == nameof(DateStart)), nameof(Assignment.DeadlineToStart) => DBColumnsStatic.Find(c => c.Name == nameof(DeadlineToStart)), nameof(Assignment.DeadlineToComplete) => DBColumnsStatic.Find(c => c.Name == nameof(DeadlineToComplete)), nameof(Assignment.Description) => DBColumnsStatic.Find(c => c.Name == nameof(Description)), nameof(Assignment.Executor) => DBColumnsStatic.Find(c => c.Name == nameof(Executor)), nameof(Assignment.Tags) => DBColumnsStatic.Find(c => c.Name == nameof(Tags)), nameof(Assignment.Observers) => DBColumnsStatic.Find(c => c.Name == nameof(Observers)), _ => throw new Exception(string.Format("Column {0} is not exists", propertyName)) });