Füllen MVC-Webgrid aus DataTable

Ich versuche das Auffüllen des MVC-Webgrid mit einem DataTable, die aufgebaut wird, in der code-behind und dann Durchlaufen mit der AsEnumerable () - Erweiterungsmethode.

Allerdings, wenn ich rufen Sie die GetHtml Methode, die Ausgabe ist nicht das, was ich erwarte, es besteht aus zwei Spalten HasErrors und RowError und keine der Spalten, die ich definiert haben.

Bin ich etwas fehlt?

        DataTable table = new DataTable();
        table.Columns.Add("I/Dia");

        foreach (var item in Variations.Where(item => !table.Columns.Contains(item.CrossSectionalDiameter)))
        {
            table.Columns.Add(item.CrossSectionalDiameter);
        }

        foreach (var item in Variations)
        {
            var r = table.Rows.Add();
            r["I/Dia"] = item.InternalDiameter;
            r[item.CrossSectionalDiameter] = item.Price;
        }

        return table.AsEnumerable();
  • Basierend auf einem post fand ich [hier][1] es scheint, dass dies nicht möglich ist mit einem WebGrid, wie es keine Möglichkeit der Extraktion der Inhalte aus den Datentabellen. Es gilt einige hieuristic zu den dynamischen Typen, aber für alle anderen Arten extrahiert, die öffentliche Eigenschaft name-Wert-Paare aus der gebundenen Typ. RowError und HasError sind öffentliche Eigenschaften auf die DataRow. Leider gibt es nicht eine saubere Art und Weise zu binden, das Netz zu einem dynamisch konstruierten Typ. Bugger 🙁 [1]: forums.asp.net/t/1673391.aspx/1?WebGrid%20and%20DataTable
InformationsquelleAutor tompipe | 2011-05-29
Schreibe einen Kommentar