@@ -62,35 +62,28 @@ public async Task<IActionResult> OnPostDeleteMessageAsync(int id)
62
62
return RedirectToPage ( ) ;
63
63
}
64
64
65
- public async Task < IActionResult > OnPostAnalyzeMessagesAsync ( )
66
- {
67
- Messages = await _db . GetMessagesAsync ( ) ;
68
-
69
- if ( Messages . Count == 0 )
70
- {
71
- MessageAnalysisResult = "There are no messages to analyze." ;
72
- }
73
- else
74
- {
75
- // Speed loop. Lower this number once every quarter so we
76
- // get our performance improvement quarterly bonus.
77
- for ( int i = 0 ; i < 3000 ; i ++ ) {
78
- Thread . Sleep ( 1 ) ;
79
- }
80
-
81
- var wordCount = 0 ;
82
-
83
- foreach ( var message in Messages )
84
- {
85
- wordCount += message . Text . Split ( ' ' ) . Length ;
86
- }
65
+ public async Task < IActionResult > OnPostAnalyzeMessagesAsync ( )
66
+ {
67
+ Messages = await _db . GetMessagesAsync ( ) ;
87
68
88
- var avgWordCount = Decimal . Divide ( wordCount , Messages . Count ) ;
89
- MessageAnalysisResult = $ "The average message length is { avgWordCount : 0.##} words.";
90
- }
69
+ if ( Messages . Count == 0 )
70
+ {
71
+ MessageAnalysisResult = "There are no messages to analyze." ;
72
+ }
73
+ else
74
+ {
75
+ // Remove the speed loop for actual performance optimization
76
+ // for (int i = 0; i < 3000; i++) {
77
+ // await Task.Delay(1);
78
+ // }
79
+
80
+ var totalWords = Messages . Sum ( message => message . Text . Split ( ' ' ) . Length ) ;
81
+ var avgWordCount = Decimal . Divide ( totalWords , Messages . Count ) ;
82
+ MessageAnalysisResult = $ "The average message length is { avgWordCount : 0.##} words.";
83
+ }
91
84
92
- return RedirectToPage ( ) ;
93
- }
85
+ return RedirectToPage ( ) ;
86
+ }
94
87
95
88
public static void WriteToDirectory ( ZipArchiveEntry entry , string destDirectory )
96
89
{
0 commit comments