Untitled

 avatar
unknown
plain_text
20 days ago
955 B
2
Indexable
public async Task<ActionResult<List<string>>> DashboardUser()
{
    var senders = await _dashboardService.GetSenderList();

    // Filter, reformat, and sort senders
    var filteredSenders = senders
        .Where(sender =>
            !string.IsNullOrWhiteSpace(sender) && // Exclude empty/null/whitespace
        .Select(sender =>
        {
            // Split name into parts
            var nameParts = sender.Split(' ', StringSplitOptions.RemoveEmptyEntries);
            if (nameParts.Length > 1)
            {
                // Reformat as "LastName FirstName"
                var lastName = nameParts.Last();
                var firstName = string.Join(" ", nameParts.Take(nameParts.Length - 1));
                return $"{lastName} {firstName}".Trim();
            }
            return sender.Trim(); // Return as-is if no split
        })
        .OrderBy(name => name) // Alphabetical order
        .ToList();

    return filteredSenders;
}
Leave a Comment