2017-05-18 2 views
0

Heute wollte ich einen Details Link zu meinem Grid.MVC Grid hinzufügen. Das Problem ist: Es möchte die Id bekommen -> zB Model.ID kann aufgelistet werden, aber in RenderValueAs ist es kein Member von x. Ich habe versucht Model.id und modelitem.id ... Was mache ich falsch?ASP.NET Grid.MVC Html.Actionlink will nicht arbeiten

Vielen Dank!

Ausblick:

@ModelType IEnumerable(Of WebApplication2.Datenbank.Dezernate) 
@imports GridMVC.html 
@Code 
    ViewData("Title") = "Index" 
End Code 
<html> 
<head> 
    <title>Index</title> 
    <meta name="viewport" content="width=device-width" /> 
<link href="@Url.Content("~/Content/Gridmvc.css")" rel="stylesheet" /> 
<link href="@Url.Content("~/Content/bootstrap.min.css")" rel="stylesheet" /> 
    <script src="@Url.Content("~/Scripts/jquery-1.9.1.min.js")"></script> 
    <script src="@Url.Content("~/Scripts/gridmvc.min.js")"></script> 
</head> 
<body> 
    <div style="width:500px;"> 

     @Html.Grid(Model).Columns(Function(modelitem) 
             'Erstellt das Grid für die anzeige der Geräte 
             modelitem.Add(Function(model) model.ID).Titled("ID") 
             modelitem.Add(Function(model) model.Dezernat).Titled("Dezernato") 
             modelitem.Add(Function(model) model.Rechner).Titled("Rechner").SetWidth(20) 
             modelitem.Add(Function(model) model.Scan).Titled("Scan").SetWidth(20) 
             modelitem.Add().Encoded(False).Sanitized(False).RenderValueAs(Html.ActionLink("Details", "Details", New With {.id = Model.id})) <-- Here is the unknown Member Model.id 
            End Function 
            ).WithPaging(10).Sortable(True) 

Modell:

Namespace Controllers 
Public Class HomeController 
    Inherits Controller 

    Private db As New TempDbContext 
    ' GET: Home 
    Function Index(ByVal id As Integer?) As ActionResult 
     Dim db As New TempDbContext 
     ViewBag.DropdownDezernate = New SelectList(db.Dezernate1, "ID", "Rechner") 
     Return View(db.Dezernate1.ToList()) 
    End Function 

    Function Details(ByVal id As Integer?) As ActionResult 
     If IsNothing(id) Then 
      Return New HttpStatusCodeResult(HttpStatusCode.BadRequest) 
     End If 
     Dim dezernate As Dezernate = db.Dezernate1.Find(id) 
     If IsNothing(dezernate) Then 
      Return HttpNotFound() 
     End If 
     Return View(dezernate) 
    End Function 

Antwort

0

nicht das Dokument für die VB-Version gefunden haben, aber in C#, RenderValueAs nimmt einen Func<T, string> Parameter.

So (sorry, wenn meine Syntax falsch ist, aber ich denke, Sie bekommen die Idee werden)

RenderValueAs(Function(model) Html.ActionLink("Details", "Details", New With {.id = model.id})) 
+0

Jetzt zeigt es keine Fehler, und es begann das Debuggen! Vut jetzt zeigt es etwas seltsam: zB Details und keine Verbindung ... seltsam – Arcurus

+0

nvm. habe verschlüsselt und Sanitized vergessen. Es funktioniert jetzt! – Arcurus

Verwandte Themen