Using Razor with Visual Basic: Listing 2.

Sample Get and Post code for an Edit view.

Option Strict Off
Dim dc As New Northwind(My.Settings.connNorthwind)
' GET: /Customer/Edit/ABCD
Function Edit(ByVal id As String) As ActionResult
  Dim customer As New Customers()
    Try
      customer = (dc.Customers.Where(Function(x) x.CustomerID = id)).Single
      Return View(customer)
    Catch ex As Exception
      ViewBag.ErrorMessage = ex.Message
      Return View(customer)
    End Try
End Function

' POST: /Customer/Edit/ABCD
<HttpPost()> _
Function Edit(ByVal id As String, 
  ByVal collection As FormCollection) As ActionResult
  Dim customer = New Customers
  Try
    customer = dc.Customers.Where(Function(x) x.CustomerID = id).Single
    TryUpdateModel(customer)
    dc.SubmitChanges()
    Return RedirectToAction("Index")
  Catch ex As Exception
    ViewBag.ErrorMessage = ex.Message
    Return View(customer)
  End Try
End Function

About the Author

Joe Kunk is a Microsoft MVP in Visual Basic, three-time president of the Greater Lansing User Group for .NET, and developer for Dart Container Corporation of Mason, Michigan. He's been developing software for over 30 years and has worked in the education, government, financial and manufacturing industries. Kunk's co-authored the book "Professional DevExpress ASP.NET Controls" (Wrox Programmer to Programmer, 2009). He can be reached via email at joekunk@gmail.com.