Benutzer mit den meisten Antworten
ASP MVC 4: Daten der DataTable im ListView (ASPX) anzeigen

Frage
-
Hallo,
ich setze MVC 4 ein und suche eine Lösung, um die Daten von der DataTable in einer ListView im ASPX nur lesend anzuzeigen.
Offensichtlich liegt der Fehler in der Zuweisung von DataSourceID.
Was fehlt für DataSourceID noch in ASPX; also ohne C#?Alexander
Homecontroller.cs:
public ActionResult Projects()
{
DataTable dataTable = null;
if (ModelState.IsValid)
{
var connectionString = ConfigurationManager.ConnectionStrings["SqlConnection"].ConnectionString;
using (var connection = new SqlConnection(connectionString))
{
string query = "SELECT * FROM [Projects]";
var command = new SqlCommand(query, connection);try
{
connection.Open();
var dataAdapter = new SqlDataAdapter(command);
var dataSet = new DataSet();
dataAdapter.Fill(dataSet);
}
catch (Exception exception)
{
//
}
}
}return View(dataTable);
}
Projects.aspx:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>
<asp:Content ID="Content_3" ContentPlaceHolderID="MainContent" runat="server">
<asp:ListView ID="ListView1" runat="server" DataSourceID="Model">
<LayoutTemplate>
<table style="width: 100%; text-align: left;">
<tr>
<td style="width: 20%; text-align: center;">Beschreibung</td>
<td style="width: 20%; text-align: center;">Titel</td>
</tr>
<tr runat="server" id="itemPlaceHolder"></tr>
</table>
</LayoutTemplate>
<ItemTemplate>
<tr id="itemPlaceHolder">
<td style="width: 20%; text-align: center;"><%#Eval("Beschreibung")%></td>
<td style="width: 20%; text-align: center;"><%#Eval("Titel")%></td>
</tr>
</ItemTemplate>
</asp:ListView>
</asp:Content>
Antworten
-
Hallo Alexander,
tja, wenn man sich schon MVC ans Bein binden will, dann mit allen Konsequenzen. Du kannst (bzw. konntest bisher) nicht einfach MVC, WebForms und sonstiges miteinander vermischen.
Den Begriff "DataSourceId" solltest Du aber so oder so ersatzlos streichen. Damit macht man in keiner Technologie irgendwas sinnvolles.
Zu deinem Problem: <asp:GridView, ... kannst Du nicht verwenden, auch nicht SqlDataSource und Co. Daher musst Du dir deine ListView bzw. den HTML Code dazu selbst aufbauen:
http://forums.asp.net/t/1893892.aspx
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort vorgeschlagen Stefan FalzModerator Dienstag, 7. Januar 2014 18:33
- Als Antwort markiert Ciprian Bogdan Mittwoch, 8. Januar 2014 19:11
Alle Antworten
-
Hallo Alexander,
tja, wenn man sich schon MVC ans Bein binden will, dann mit allen Konsequenzen. Du kannst (bzw. konntest bisher) nicht einfach MVC, WebForms und sonstiges miteinander vermischen.
Den Begriff "DataSourceId" solltest Du aber so oder so ersatzlos streichen. Damit macht man in keiner Technologie irgendwas sinnvolles.
Zu deinem Problem: <asp:GridView, ... kannst Du nicht verwenden, auch nicht SqlDataSource und Co. Daher musst Du dir deine ListView bzw. den HTML Code dazu selbst aufbauen:
http://forums.asp.net/t/1893892.aspx
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort vorgeschlagen Stefan FalzModerator Dienstag, 7. Januar 2014 18:33
- Als Antwort markiert Ciprian Bogdan Mittwoch, 8. Januar 2014 19:11
-
Hi Alexander,
Hat Dir die Antwort von Stefan geholfen ? Wenn ja - bitte markiere diese "als Antwort" .
Danke und Gruß,
Ciprian
Ciprian Bogdan, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip„Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.