私は 2 つのアクション メソッドを持つ ProdcutsController を持っています。索引と詳細。Index は製品のリストを返し、Details は選択した製品 ID の詳細を返します。
だから私のURLは似ています
sitename/Products/
インデックス ビューを読み込み、製品のリストを表示します。
sitename/Products/Details/1234
詳細ビューをロードして、製品 1234 の詳細を表示します。
ここで、2 番目の URL から「詳細」という単語を避けたいと思います。次のように見えるように
sitename/Products/1234
アクションメソッドの名前を「詳細」から「インデックス」にパラメータを付けて変更しようとしました。しかし、エラー " Method is is ambiguous"が表示されました
私はこれを試しました
public ActionResult Index()
{
//code to load Listing view
}
public ActionResult Index(string? id)
{
//code to load details view
}
私は今、このエラーが発生しています
The type 'string' must be a non-nullable value type in order to use
it as parameter 'T' in the generic type or method 'System.Nullable<T>
メソッドのオーバーロードをサポートしていないことに気付きました! どうすればこれを処理できますか? ルート定義を更新する必要がありますか?