2016-10-28 4 views
0

Ich habe eine DataTable aus einer SQL-Abfrage im Controller erstellt.So binden Sie C# Variable an HTML

Wie "verbinde ich" #example "mit" Kategorien "?

EDIT1: Nach dem Vorschlag jQuery.DataTables zu verwenden

@{ 
    Layout = null; 
} 

<!DOCTYPE html> 

<html> 
<head> 
    <meta name="viewport" content="width=device-width" /> 
    <title>Employee Index Page</title> 
</head> 
<body> 
    <div> 
    <h1>Employee Index Page</h1> 
     <table id="example"> 

</div> 
</body> 
</html> 

@{ var categories = (System.Data.DataTable)ViewData["MyData"]; } 

<script> 
    $(document).ready(function() { 
     $('#example').DataTable(); 
    }); 
</script> 

ORIGINAL

I want to assign this to a gridview. The Code from the View is below but GridView1 needs to be defined somehow. 

In the c# categories has the right contents, but GridView1 get the error "does not exist in the current context". 

How and where do I fix that? 

    @{ 
     Layout = null; 
    } 

    <!DOCTYPE html> 

    <html> 
    <head> 
     <meta name="viewport" content="width=device-width" /> 
     <title>Employee Index Page</title> 
    </head> 
    <body> 
     <div> 
     <h1>Employee Index Page</h1> 
      <asp:GridView ID="GridView1" HeaderStyle-BackColor="#3AC0F2" HeaderStyle-ForeColor="White" 
          runat="server" DataSource='<%# GetData() %>' AutoGenerateColumns="true"> 
      </asp:GridView> 
      @{ 
       var categories = (System.Data.DataTable)ViewData["MyData"]; 
       GridView1.DataSource = categories; 
       GridView1.DataBind(); 
      } 
     </div> 
    </body> 
    </html> 
+0

Warum verwenden Sie asp: gridview in MVC? – ChrisBint

+0

Web-Suche vorgeschlagen, es war eine einfache Möglichkeit, eine DataTable anzuzeigen. Ich bin offen für Alternativen! – ManInMoon

+0

Persönlich würde ich mit Daten-Tabellen (oder ähnlich) mit MVC http://www.codeproject.com/Articles/155422/jQuery-DataTables-and-ASP-NET-MVC-Integration-Part – ChrisBint

Antwort

0

Zunächst empfehle ich Ihnen nicht in einer Ansicht zu setzen everyrthing, Erstellen Sie View for Grid nehmen @model List<YourClass> und View für Ihr Layout.

Für Display-Gridview in MVC, Es gibt viele Optionen (Free und nicht frei)

Table Beispiel

your Html for example 
--------------------- 
<table id="example" class="display" cellspacing="0" width="100%"> 
     <thead> 
      <tr> 
       <th>Name</th> 
       <th>Position</th> 
      </tr> 
     </thead> 
     <tbody> 
      @foreach(var item in Model) 
      <tr> 
       <td>@item.Name</td> 
       <td>@item.Position</td> 
      </tr> 
     <tbody> 
    </table> 


<script type="text/javascript" charset="utf8" src="//code.jquery.com/jquery-1.12.3.js"></script> 
<script type="text/javascript" charset="utf8" src="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script> 
<script> 
     $(document).ready(function() { 
     $('#example').DataTable(); 
     }); 
</script> 
+0

Ahmed, ich habe Änderungen an der Frage vorgenommen - wie verbinde ich jquery.datatable mit meiner Datentabelle? – ManInMoon

+0

Sie müssen zuerst mehr über MVC und Javascript –

+0

das ist ein OpenSource-Projekt, das ich vor der Verwendung von MVC, JAVScript, AJAX erstellt habe, ich denke, es wird helfen https://github.com/AhmedRagheb/Movies-Search –

Verwandte Themen