Trasa ASP.NET z dowolną liczbą par klucz-wartość - czy to możliwe?
Chciałbym obsługiwać takie adresy URL:
/Id/Key1/Value1/Key2/Value2/Key3/Value3/
W tej chwili ustawiłem taką regułę:
/{id}/{*parameters}
Theparameters
obiekt jest przekazywany jako pojedynczystring
do wszystkich działań związanych z tworzeniem odpowiedzi. To działa, ale mam z tym kilka problemów:
string
dla siebie. Oczywiście stworzyłem metodę rozszerzenia, która zmieniastring
do aDictionary<string, string>
, ale wolałbym, żeby mechanizm wysyłania dał moje metodyDictionary<string, string>
bezpośrednio - lub jeszcze lepiej, rzeczywiste pary jako osobne argumenty.Linki akcji nadal będą dodawać parametry w tradycyjnym formacie (?Key1=Value1
). Myślę, że mógłbym napisać wyspecjalizowanych pomocników z moim pożądanym formatem, ale wolałbym, żeby istniał sposób, aby istniejące przeciążenia były zgodne z powyższą regułą routingu.Czy istnieje sposób na wykonanie powyższego?