Obecnie próbuję uzyskać informacje na temat wszystkich różnych wzorów projektowych. Zostałem ustawiony do sortowania IQueryable
na podstawie różnych kolumn, to jak to jest obecnie realizowane:Posługiwanie się wzorcem projektowania strategii (C#) do sortowania na podstawie różnych kolumn danych
if (choice == 1)
{
return from Animals in ctx.Animals orderby Animals.AnimalID descending select Animals;
}
else if (choice == 2)
{
return from Animals in ctx.Animals orderby Animals.Name descending select Animals;
}
else if (choice == 3)
{
return from Animals in ctx.Animals orderby Animals.Age descending select Animals;
}
wydaje się jednak jak zły zapachy kodu do mnie, że nie ma możliwość dodawania różnych pól lub opcji sortowania łatwo, mój opiekun poinformowała mnie, że byłoby lepiej wdrożyć wzorzec strategii i użyć Dictionary
, aby wybrać wymaganą implementację strategii, jednak nie jestem pewien, w jaki sposób wzorzec strategii zostanie zastosowany w tej sytuacji, wskazówki byłyby bardzo doceniane, jeśli potrzebne są dodatkowe informacje, po prostu zapytaj.
http: // www.dofactory.com/Patterns/PatternStrategy.aspx –
Dobra odpowiedź od dcastro. Dał ci całą wskazówkę. Od tego momentu musisz zrobić to sam. – Irfan