Я просмотрел множество сайтов и предложений, но не смог заставить работать концепцию привязки. Я столкнулся со следующей проблемой.
У меня есть следующий класс модели, как показано ниже: Master View Model:
Public Class MasterVM
Public Property Language As LanguageVM
Public Property Question As QuestionVM
Public menus As List(Of MenuVM)
Public Property UserControlName As String
Public Property Model As Object
End Class
Модель представления языка
Public Class LanguageVM
#Region "Properties"
Public Property IsEnglish As Boolean
#End Region
End Class
Класс моего контроллера:
Public Class WizardController
Inherits System.Web.Mvc.Controller
'
' GET: /Wizard
Function Index() As ActionResult
Dim oWizard As New Wizard
Dim oMasterWizard As New MasterVM
Dim IsNewlyIniated As Boolean = False
If (System.Web.HttpContext.Current.Session(Constants.WizardObjectCollection) IsNot Nothing) Then
If (System.Web.HttpContext.Current.Session(Constants.WizardObjectCollection).ToString <> "") Then
oMasterWizard = DirectCast(System.Web.HttpContext.Current.Session(Constants.WizardObjectCollection), MasterVM)
Else
IsNewlyIniated = True
End If
Else
IsNewlyIniated = True
End If
If (IsNewlyIniated) Then
oMasterWizard = oWizard.GetWizardInfo()
If (Session("Language").ToString() = "Spanish") Then
oMasterWizard.Wizard.Language.IsEnglish = False
Else
oMasterWizard.Wizard.Language.IsEnglish = True
End If
System.Web.HttpContext.Current.Session(Constants.WizardObjectCollection) = oMasterWizard
End If
Return View("Wizard", oMasterWizard)
End Function
<HttpPost()>
Function GetLanguageInfo(ByVal oLanguage As LanguageVM) As ActionResult
Try
Dim a As Integer
a = 10
Catch ex As Exception
Throw ex
End Try
End Function
End Class
Я хочу отобразить два переключателя в моем представлении, отображающем язык как английский и испанский. По умолчанию он должен быть привязан к свойствам моего языкового класса isenglish и isspanish.
и когда происходит сообщение, я должен получить значение, если пользователь изменил его в свойстве Is selected. как я могу это получить.
Мой код страницы ASCX выглядит следующим образом:
<%@ Control Language="VB" Inherits="System.Web.Mvc.ViewUserControl(Of SBE.Services.MasterWizard.LanguageVM)" %>
<form method="post" action="/Wizard/GetLanguageInfo">
<fieldset>
<legend>Wizard Language</legend>
<p>Please select the language for your Wizard</p>
<%= Html.RadioButtonFor(Function(model) model.IsEnglish, True)%>English
<%= Html.RadioButtonFor(Function(model) model.IsEnglish, False)%> Spanish
<input id="btnNext" type="submit" value="Next">
Еще одна цель заключается в том, что после привязки я хочу, чтобы обновленное значение было выбрано пользователем в объекте и передано для публикации действия, определенного в контроллере. Любая помощь будет оценена.