将 joined table 传递给 razor 视图

Passing joined table to razor view

我是 MVC 架构的新手,我有以下连接两个表的控制器:

Public Class ProblemsController
    Inherits Controller
    Private db As New dbECRMEntities
    ' GET: Problems
    Function Index() As ActionResult
        Dim q = (From pb In db.Problem_History Join pbs In db.Problems On pb.problem_id Equals pbs.problem_id)
        Return View(q.AsEnumerable)
    End Function
End Class

我应该如何在视图中设置 @ModelType 以便引用 q 中的值?我的项目名称是 ECRM,当我输入 ECRM.Models

时,我似乎无法让 VS2013 识别任何内容

加入表格给我带来的麻烦似乎比我最初想象的要多得多!

如果您还没有 return 类型,请创建一个 class(此处为简单示例)

Public Class YourClass
    Public ExampleValue As String
End Class

然后将控制器中的代码更改为此

Public Class ProblemsController
    Inherits Controller
    Private db As New dbECRMEntities
    ' GET: Problems
    Function Index() As ActionResult
    Dim q = (From pb In db.Problem_History Join pbs In db.Problems On pb.problem_id Equals pbs.problem_id
         Select New YourClass With {.ExampleValue = pb.ExampleValue})
    Return View(q.AsEnumerable)
    End Function
End Class

然后像这样在视图中设置模型类型

@ModelType List(Of MvcApplication1.ExampleClass)