Я просмотрел много сайтов и предложений, но не смог заставить работать концепцию привязки. Я столкнулся со следующей проблемой.
У меня есть следующий класс модели, как показано ниже:
Модель Master View:
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">
Еще одна цель состоит в том, чтобы после связывания я хотел, чтобы обновленное значение было выбрано пользователем в объекте и передано ему для публикации действия, определенного в контроллере. Любая помощь будет принята с благодарностью.