従来の Web フォームの ASPX ページ内で、次を使用して URL ルートを作成します。
var url = this.GetRouteUrl("MyRouteName", new {UserId = 123}); // Generates /UserId/123
MyRouteName
Routes.RegisterRoutes()
起動時に使用されるメソッド内で定義されています。
ただし、アプリケーション レベルで動作するヘルパー メソッド内で URL を生成する必要があります。そこには明らかにページ コンテキストがないため、エラーが発生します。
MSDNのドキュメントには次のように記載されています。
このメソッドは、コーディングの利便性のために提供されています。RouteCollection.GetVirtualPath(RequestContext, RouteValueDictionary) メソッドを呼び出すのと同じです。このメソッドは、 RouteValueDictionary.RouteValueDictionary(Object)コンストラクターを使用して、 routeParameters で渡されたオブジェクトをRouteValueDictionaryオブジェクトに変換します。
これらを読みましたが、達成する必要があることが可能かどうかわかりません。オンライン検索でいくつかの答えが見つかりましたが、これらは何年も前のものであり、実装するのは簡単ではありません.