何が間違っていたのか、何がこのバグを引き起こしたのかわかりません。このフォームをコントローラーに送信すると、コントローラーは 2 つの空のフィールドを受け取ります。
ビュー内のフォームは次のとおりです。
@Using Html.BeginForm("contactSearch", "search", FormMethod.Post)
@Html.TextBox("SearchString")
@Html.DropDownList("opportunite", "Choisissez une opportunité")
@<input type="submit" value="Submit!" />
End Using
そして、ここにコントローラーがあります:
<HttpPost()>
Function contactSearch(ByVal search As String, ByVal opportunite As opportunite) As ViewResult
If opportunite Is Nothing Then
ModelState.AddModelError("opportunite", "Opportunite is empty")
ViewBag.opportunite = New SelectList(db.opportunite, "idOpportunite", "nomOffre")
Return View()
End If
...
私はまだ少し問題があります, 私が書いた場合:
Function contactSearch(ByVal searchString As String, ByVal opportunite As Integer)
そして、これらのフィールドのいずれかが空の場合、次のエラーが発生しました: パラメーター ディクショナリには、パラメーター 'opportunite' の null エントリが含まれています...
したがって、これを解決する唯一の方法は、以下のコードを使用することでした。これを解決する良い方法はありませんか?
Function contactSearch(ByVal search As String, ByVal opportunite As opportunite) As ViewResult
Dim opport As Integer = 0
Try
opport = Val(Request("opportunite"))
Catch ex As Exception
End Try
If opport = 0 Then