public ActionResult GetScoreFor(CategoryColumn x) { var analytics = Analytics.FromSession(); switch (x) { case CategoryColumn.Age: return(Json(((List <ProcedureDataItem>)analytics.ProcedureResults.Results) .Where(r => r.Age.HasValue) .GroupBy(r => r.Age.Value) .Select(r => new { x = r.Key, y = Math.Truncate(100 * r.Average(s => s.Score)) / 100 }) .OrderBy(r => r.x) .ToArray(), JsonRequestBehavior.AllowGet)); case CategoryColumn.Class: return(Json(((List <ProcedureDataItem>)analytics.ProcedureResults.Results) .Where(r => !string.IsNullOrWhiteSpace(r.Class)) .GroupBy(r => r.Class) .Select(r => new { x = r.Key, y = Math.Truncate(100 * r.Average(s => s.Score)) / 100 }) .OrderBy(r => r.x) .ToArray(), JsonRequestBehavior.AllowGet)); case CategoryColumn.Ethnicity: return(Json(((List <ProcedureDataItem>)analytics.ProcedureResults.Results) .Where(r => !string.IsNullOrWhiteSpace(r.Ethnicity)) .GroupBy(r => r.Ethnicity) .Select(r => new { x = r.Key, y = Math.Truncate(100 * r.Average(s => s.Score)) / 100 }) .OrderBy(r => r.x) .ToArray(), JsonRequestBehavior.AllowGet)); case CategoryColumn.Gender: return(Json(((List <ProcedureDataItem>)analytics.ProcedureResults.Results) .Where(r => !string.IsNullOrWhiteSpace(r.Gender)) .GroupBy(r => r.Gender) .Select(r => new { x = r.Key, y = Math.Truncate(100 * r.Average(s => s.Score)) / 100 }) .OrderBy(r => r.x) .ToArray(), JsonRequestBehavior.AllowGet)); case CategoryColumn.InstitutionId: return(Json(((List <ProcedureDataItem>)analytics.ProcedureResults.Results) .GroupBy(r => r.InstitutionId) .Select(r => new { x = r.Key, y = Math.Truncate(100 * r.Average(s => s.Score)) / 100 }) .OrderBy(r => r.x) .ToArray(), JsonRequestBehavior.AllowGet)); default: return(Json(((List <ProcedureDataItem>)analytics.ProcedureResults.Results) .GroupBy(r => r.Name) .Select(r => new { x = r.Key, y = Math.Truncate(100 * r.Average(s => s.Score)) / 100 }) .OrderBy(r => r.x) .ToArray(), JsonRequestBehavior.AllowGet)); } }
/// <summary> /// Raises the <see cref="ColumnChanged" /> event. /// </summary> /// <param name="column">The <see cref="CategoryColumn"/> which has raised the event.</param> /// <param name="value">The changed value.</param> public virtual void OnColumnChanged(CategoryColumn column, object value) { if (!SuppressEntityEvents) { CategoryEventHandler handler = ColumnChanged; if (handler != null) { handler(this, new CategoryEventArgs(column, value)); } // warn the parent list that i have changed OnEntityChanged(); } }
/// <summary> /// Raises the <see cref="ColumnChanging" /> event. /// </summary> /// <param name="column">The <see cref="CategoryColumn"/> which has raised the event.</param> /// <param name="value">The changed value.</param> public virtual void OnColumnChanging(CategoryColumn column, object value) { if (IsEntityTracked && EntityState != EntityState.Added && !EntityManager.TrackChangedEntities) { EntityManager.StopTracking(entityTrackingKey); } if (!SuppressEntityEvents) { CategoryEventHandler handler = ColumnChanging; if (handler != null) { handler(this, new CategoryEventArgs(column, value)); } } }
/// <summary> /// Determines whether the property value has changed from the original data. /// </summary> /// <param name="column">The column.</param> /// <returns> /// <c>true</c> if the property value has changed; otherwise, <c>false</c>. /// </returns> public bool IsPropertyChanged(CategoryColumn column) { switch (column) { case CategoryColumn.CategoryId: return(entityData.CategoryId != _originalData.CategoryId); case CategoryColumn.Name: return(entityData.Name != _originalData.Name); case CategoryColumn.Descn: return(entityData.Descn != _originalData.Descn); default: return(false); } }
public static string GetColumnName(CategoryColumn column) { switch (column) { case CategoryColumn.CategoryID: return "CategoryID"; case CategoryColumn.CategoryName: return "CategoryName"; case CategoryColumn.Description: return "Description"; case CategoryColumn.Picture: return "Picture"; } throw new InvalidOperationException("Invalid Enumeration Value"); }
/// <summary> /// Initializes a new instance of the <see cref="T:CategoryComparer"/> class. /// </summary> /// <param name="column">The column to sort on.</param> public CategoryComparer(CategoryColumn column) { this.whichComparison = column; }
///<summary> /// Initalizes a new Instance of the CategoryEventArgs class. ///</summary> public CategoryEventArgs(CategoryColumn column, object value) { this.column = column; this.value = value; }
///<summary> /// Initalizes a new Instance of the CategoryEventArgs class. ///</summary> public CategoryEventArgs(CategoryColumn column) { this.column = column; }
/// <summary> /// Raises the <see cref="ColumnChanged" /> event. /// </summary> /// <param name="column">The <see cref="CategoryColumn"/> which has raised the event.</param> public virtual void OnColumnChanged(CategoryColumn column) { OnColumnChanged(column, null); return; }