Reputation: 21
I am relatively new to WebMatrix and wish to create a page that displays data from the database. See the code below. It returns WebMatrix Returns WebMatrix.Data.DynamicRecord and the column name on every cell
@{
var db = Database.Open("TimesheetsEdit");
var selectQueryString = "SELECT * FROM CommsTime ORDER BY [Client name]";
var result = db.Query(selectQueryString);
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Timesheet Edit Form</title>
<meta name="viewport" content="width=960">
<link rel="stylesheet" type="text/css" href="scripts/wpstyles.css">
<style>
table, th, td {
border: solid 1px #bbbbbb;
border-collapse: collapse;
padding: 2px;
}
</style>
</head>
<body>
<h1>Timesheet Edit Form</h1>
<table style="width: 100%" border:"0" cellspacing:"0" cellpadding:"0">
<thead>
<tr>
<th>Client Name</th>
<th>Client Short Name</th>
<th>Project name</th>
<th>Project number</th>
<th>Project Type</th>
<th>Task Billable</th>
<th>Billing Rate</th>
<th>CRM Ref</th>
<th>Travel Site</th>
<th>Timesheet No</th>
<th>Commision Hrs</th>
<th>Commision Rate</th>
</tr>
</thead>
<tbody>
@foreach(var row in result)
{
<tr>
<td>@row.[Client name]</td>
<td>@row.[Client short name]</td>
<td>@row.[Project name]</td>
<td>@row.[Project number]</td>
<td>@row.[Project type]</td>
<td>@row.[Task billable]</td>
<td>@row.[Billing Rate]</td>
<td>@row.[CRM Ref:]</td>
<td>@row.[Travel Site]</td>
<td>@row.[Timesheet No]</td>
<td>@row.[Commision Hrs]</td>
<td>@row.[Commision Rate]</td>
</tr>
}
</tbody>
</table>
</body>
</html>
.
This is on Webmatrix 3
Here is the output on the attached image
Upvotes: 2
Views: 209
Reputation: 83
Get rid of your brackets and your column names in your table can't have spaces. Also it is better to do your query as it is below to help prevent sql injection.
var db = Database.Open("TimesheetsEdit");
var selectQueryString = "SELECT * FROM CommsTime ORDER BY @0";
var clientname = "Clientname";
var result = db.Query(selectQueryString, clientname);
<td>@row.Clientname</td>
<td>@row.Clientshortname</td>
<td>@row.Projectname</td>
<td>@row.Projectnumber</td>
<td>@row.Projecttype</td>
<td>@row.Taskbillable</td>
<td>@row.BillingRate</td>
<td>@row.CRMRef</td>
<td>@row.TravelSite</td>
<td>@row.TimesheetNo</td>
<td>@row.CommisionHrs</td>
<td>@row.CommisionRate</td>
Upvotes: 0