2

複雑なオブジェクト (モデル) をビューにバインドする必要があります。私は検索モデルと検索ビューを持っています..

検索モデル、

public class SearchModel
{
    public SearchCriteria SearchCriteria { get; set; }
    .....
}

検索基準

public class SearchCriteria
{
    public int AccountId { get; set; }
    public string AccountName { get; set; }
    ......
}

検索ビュー

@Html.LabelFor(x => x.SearchCriteria.AccountId, "Account ID")
@Html.TextBoxFor(x => x.SearchCriteria.AccountId)
@Html.LabelFor(x => x.SearchCriteria.AccountName, "Account Name")
@Html.TextBoxFor(x => x.SearchCriteria.AccountName)

これは次のようにレンダリングされます

<label for="SearchCriteria_AccountId">Account ID</label>
<input id="SearchCriteria_AccountId" name="SearchCriteria.AccountId" type="text" value="">
<label for="SearchCriteria_AccountName">Account Name</label>
<input id="SearchCriteria_AccountName" name="SearchCriteria.AccountName" type="text" value="">

コントロール名は としてレンダリングされSearchCriteria.AccountIdSearchCriteria.AccountNameコントロール ID は としてレンダリングされますSearchCriteria_AccountIdSearchCriteria_AccountName

get リクエストでフォームを送信すると、クエリ文字列は次のようになります。

?SearchCriteria.AccountId=1&SearchCriteria.AccountName=aaa

接尾辞なしで表示するように変更する方法はありますSearchCriteriaか?

したがって、コントロール名は としてレンダリングされAccountIdAccountNameコントロール ID は としてレンダリングされる必要がありますAccountIdAccountName

クエリ文字列は次のようになります。

?AccountId=1&AccountName=aaa
4

1 に答える 1