Asp.net mvc 将值从视图传递到控制器
我希望在单击“提交”时传递下拉框中选择的值。相反,它传递的是一个空值,我不知道为什么。感谢您的帮助 控制器:Asp.net mvc 将值从视图传递到控制器,asp.net-mvc,vb.net,Asp.net Mvc,Vb.net,我希望在单击“提交”时传递下拉框中选择的值。相反,它传递的是一个空值,我不知道为什么。感谢您的帮助 控制器: Namespace DHR Public Class WorkSampleController Inherits System.Web.Mvc.Controller Private dbQ As QuarterDBContext = New QuarterDBContext Private db As WorkSampleDBConte
Namespace DHR
Public Class WorkSampleController
Inherits System.Web.Mvc.Controller
Private dbQ As QuarterDBContext = New QuarterDBContext
Private db As WorkSampleDBContext = New WorkSampleDBContext
Function Index() As ViewResult
Dim quarterList As New List(Of String)()
Dim QuarterQry = From d In dbQ.getQuarter
Order By d.ID
Select d.Quarter
quarterList.AddRange(QuarterQry.Distinct())
ViewBag.Quarter = New SelectList(quarterList)
Return View(db.WorkSample.ToList())
End Function
<HttpPost()>
Function Index(ByVal quarterID As Integer) As ActionResult
Dim quarter As String = "null"
If quarterID = 1 Then
quarter = "Dec, Jan, Feb"
End If
ViewBag.test = quarter
Return View()
End Function
视图:
你确定你的代码真的在你的post方法中传递吗?因为当我一个月前开始使用asp.net时,我遇到了一个问题 我通过用Html.beginformost替换Html.BeginForm解决了这个问题 我不确定它是否会奏效 编辑: 我也已经用过了:
Dim test1 As String = request("SampleType")
Dim test2 As String = request("Quarter")
你确定你的代码真的在你的post方法中传递吗?因为当我一个月前开始使用asp.net时,我遇到了一个问题 我通过用Html.beginformost替换Html.BeginForm解决了这个问题 我不确定它是否会奏效 编辑: 我也已经用过了:
Dim test1 As String = request("SampleType")
Dim test2 As String = request("Quarter")
我不确定,但是如果你用C做的话,你可以使用FormCollection作为ActionResult的inparameter并从中获取值。我会这样做的
public ActionResult Index(FormCollection coll){
var value1 = coll["SampleType"];
var value1 = coll["Quarter"];
}
如果它在VB中不起作用,我很抱歉,但它是否值得一试?我不确定,但是如果你在C中使用它,你可以使用FormCollection作为ActionResult的参数,并从中获取值。我会这样做的
public ActionResult Index(FormCollection coll){
var value1 = coll["SampleType"];
var value1 = coll["Quarter"];
}
很抱歉,如果它在VB中不起作用,但可能值得一试?**这使它起作用,我们没有使用正确的值传递。使用Html.BeginFormPost、ViewFolder、FormMethod.get**这使得它能够工作,我们没有使用正确的值传递。使用Html.BeginFormPost、ViewFolder、FormMethod.get