0
私はビジネス検索フィルタオブジェクトの作成に使用するビューモデルを持っています。私の見解では、私はアクションリンクを作成します...MVC 5 - デフォルト値の場合はプロパティをシリアル化しない
@Html.ActionLink("Search Link",
actionName:="Index",
controllerName:="Jobs",
routeValues:=New MyFilterViewModel() With {.Field1 = "Some Value", .Field2 = "Some other value"}, htmlAttributes:=Nothing)
これはうまくいきます。ビューモデルのプロパティをクエリ文字列のパラメータとしてシリアライズし、コントローラアクションによってバインドされます。
フィルタビューモデルには他の多くのプロパティがありますが、大部分は関連性がありませんが、大部分は設定されていませんが、URLパラメータにはすべてシリアル化されています。
モデルビューのプロパティをデコレートする方法はありますか?割り当てられている場合(デフォルト値ではない)にのみシリアル化されますか?
これはJSONシリアライズのためではなく、URLパラメータのシリアル化のために動作します。 – user1751825
おそらく同じアプローチをカスタムモデルバインダーを使用して実装できますか? – Nsevens
@Nsevensはいこれは、カスタムモデルバインダーを使用して行うことができます。 –