我希望创建一个视图与一个下拉框,其中列出了数据库中的表编程语言。我对此没有问题,但我也想要10个复选框,称为级别1到级别10。现在这10个级别已经在数据库中的一个单独的表中,每个都有自己的id等。
我的问题是,我如何创建一个页面,让您选择一种语言,然后选择级别2和3,然后将它们添加到另一个带有语言和级别表的外键的数据库表中?我知道一开始这听起来很简单,但我需要创建一个控制器来检查检查哪些级别并添加它们。复杂的部分是每种语言都有不同的技能范围,并不是所有的语言都从1开始到10结束。
以下是这些表的示例:
语言ID语言名称
级别ID级别名称
已映射ID LanguageID LevelID。
谢谢!
发布于 2012-08-15 04:28:40
您需要为每个实体创建模型。然后,在控制器中,将模型发送到视图,如下所示:
'
' GET: /MyController/MyAction
Public Function MyAction() As ActionResult
Dim db = New LanguageDbContext
ViewBag.Language = New SelectList(db.Languages, "LanguageId", "Name")
Dim db1 = New LevelsDbContext
ViewBag.level = New SelectList(db1.Levels, "LevelId", "Name")
Return View()
End Function然后,您需要从POST上的视图中获取模型,如下所示:
'
' POST: /MyController/MyAction
<HttpPost()> _
Public Function MyAction(ByVal model As MyModel) As ActionResult
If ModelState.IsValid Then
' update your database by accessing model like this
Dim db As Languages = New LanguageDbContext
Dim language As New Language
language.Name = model.Name
db.Languages.Add(language)
db.SaveChanges()
End if
End Function当然,请在http://asp.net/mvc上阅读mvc
https://stackoverflow.com/questions/11959991
复制相似问题