Я создал класс модели и контроллер, связанные с таблицей базы данных, и хочу заполнить выпадающий список из другой таблицы. моя модель и код контроллера ниже: -генерирует выпадающее меню, используя значения из другой таблицы в asp.net. vb mvc 4
Imports System.Data.Entity
Namespace employee1
Public Class EmployeeController
Inherits System.Web.Mvc.Controller
Private db As New EmployeeDBContext
'
' GET: /Employee/
Function Index(ByVal sortOrder As String) As ActionResult
ViewBag.LastNameSortParm = If(String.IsNullOrEmpty(sortOrder), "LastName_desc", String.Empty)
Dim Employee = From e In db.Employee Select e
Select Case sortOrder
Case "LastName_desc"
Employee = Employee.OrderByDescending(Function(e) e.LastName)
Case Else
Employee = Employee.OrderBy(Function(e) e.LastName)
End Select
Return View(Employee.ToList())
End Function
'
' GET: /Employee/Details/5
Function Details(Optional ByVal id As Integer = Nothing) As ActionResult
Dim employeemodel As EmployeeModel = db.Employee.Find(id)
If IsNothing(employeemodel) Then
Return HttpNotFound()
End If
Return View(employeemodel)
End Function
'
' GET: /Employee/Create
Function Create() As ActionResult
Return View()
End Function
и это моя модель
Imports System.Data.Entity
Public Class EmployeeModel
Public Property ID() As Integer
Public Property CompanyCode() As String
Public Property FirstName() As String
Public Property LastName() As String
Public Property DeptNum() As String
Public Property Status() As Char
Public Property txtCity() As String
Public Property txtState() As String
Public Property txtZip() As String
Public Property txtPhone() As String
Public Property txtPhoneExt() As String
Public Property LastReviewDate() As Date
Public Property HireDate() As Date
End Class
Public Class EmployeeDBContext
Inherits DbContext
Public Property Employee() As DbSet(Of EmployeeModel)
End Class
Я хочу выпадающий список в создании представления для состояния из другой таблицы с именем IDStatus зрения как
@Using Html.BeginForm()
@Html.ValidationSummary(True)
@<fieldset>
<legend>EmployeeModel</legend>
<div class="editor-label">
@Html.LabelFor(Function(model) model.CompanyCode)
</div>
<div class="editor-field">
@Html.EditorFor(Function(model) model.CompanyCode)
@Html.ValidationMessageFor
</div>
<!-- how do i use dropdown list here which is from different table?-->
</fieldset>
End Using
Не забудьте привести объект ViewBag к SelectList – Thijs
, если это полезно тогда принимать это как ответ :) –
И не используйте '@ Html.DropDownList()'. Всегда используйте сильно типизированные помощники '@ Html.DropDownListFor (m => m.YourProperty, (SelectList) ViewBag.YourCollection)' –