Сопоставление URL-адресов с C# HttpListener

В приведенном ниже коде я жду любого вызова на порт 8080.

static void Main()
{
  HttpListener listener = new HttpListener();
  listener.Prefixes.Add("http://*:8080/");
  listener.Start();
  while(isRunning)
  {
     HttpListenerContext ctx = listener.GetContext();
     new Thread(new Worker(ctx).ProcessRequest).Start();
  }
}

Можно ли сопоставить определенные шаблоны URL с другим поведением? Я хочу получить сервер в стиле REST, т.е. вызов to localhost:8080/person/1запустит getPersonHandler(int)

[Mapping("*:8080/person/$id")]
public void getPersonHandler(int id){...}

Синтаксис Mapping— это просто моя собственная желаемая аналогия с библиотеками JAX-RS, которые я знаю. хотел бы сделать то же самое в C# (настольный C#, а не asp)

16
задан emesx 4 April 2012 в 18:59
поделиться