11

ベストプラクティスのように、ルート用にUrlHelperを構築しています

問題は、デバッグ時に戻り値が常にnullであることが判明したことです。

Url.RouteUrl( "x")はnullを返します

Url.RouteCollection ["X"] return Route

私がやろうとしている:

public static string Category(this UrlHelper helper, int Id, string category)
{
     return helper.RouteUrl("X", new {id = Id, category= category});
}

どこで間違っているのかわからない

4

2 に答える 2

17

これは、ルートの登録時に{id}と{category}のデフォルト値を指定しなかったことが原因のようです。

Url.RouteUrl("x")idとcategoryの値が指定されておらず、ルート定義にデフォルトがないため、nullを返します。

ルートエントリを更新してidとcategoryのデフォルト値を指定すると、問題が解決することがわかると思います。または、idとcategoryの値を常に指定する必要がある場合は、それなしで行うことができます。

実際のURLヘルパーメソッドCategory()に関しては、idとcategoryにnull以外の値または空の値を指定している場合は、そのままで問題なく機能するはずです。私は文字通りコードをコピーしました、そしてそれは私のために働きます。

于 2009-08-14T17:58:53.063 に答える
0

何らかの理由で、MVCリリース候補をまだ実行していましたが、MVC 1.0をインストールしましたが、正常に動作します

于 2009-08-16T10:15:32.870 に答える