0

私が持っているコードを説明してから、質問をします。

そんなクラスがあります

public class MyModel
{
    public virtual ICollection<SomeObject> fweek { get; set; }
    public virtual ICollection<SomeObject> ftxt { get; set; }
    public virtual ICollection<SomeObject> fbool { get; set; }
}

次に、そのようなモデルのエディターを作成しています:

@model MyModel
@using(Html.BeginForm("SomeAction", "SomeController", FormMethod.GET))
{
    @Html.EditorFor(m => m.fweek)
    @Html.EditorFor(m => m.ftxt)
    @Html.EditorFor(m => m.fbool)
    <input type="submit" value="Submit" />
}

結果としてフォームを送信すると、同様の URL にリダイレクトされます。

http://localhost:3517/pl-PL/Places/Search?
fbool%5B0%5D.Value=false&
fweek%5B0%5D.Value=1&
fweek%5B1%5D.Value=2&
ftxt%5B0%5D.Value=23fasf&
ftxt%5B1%5D.Value=assffg&

問題は、そのような URL (特に %5B および %5D シーケンス) を書き換えて、より SEO/ユーザー フレンドリーにすることは可能かということです。この例の URL は次のようになります。

http://localhost:3517/pl-PL/Places/Search?
fbool.Value=false&
fweek.Value=1&
fweek.Value=2&
ftxt.Value=23fasf&
ftxt.Value=assffg&

助けてくれてありがとう。よろしく。

4

1 に答える 1

0
http://localhost:3517/pl-PL/Places/Search?
fbool.Value=false&
fweek.Value=1&
fweek.Value=2&
ftxt.Value=23fasf&
ftxt.Value=assffg&

同じ名前の複数のフォーム フィールドを送信しているため、これはどのシナリオでも機能しません。そのため、それらに関連付けられたインデックスが必要です。IE

fweek[0].Value=1&fweek[1].Value =2

インデックスがなければ、どれがどれであるかをどのように判断できますfweekか?

このフォームを投稿してみませんか?

于 2012-01-02T20:59:18.483 に答える