I have created Linq-to-SQL for a view of SQL Server, now I'm trying to display record on view, it's done :) but
- problem is that it shows each name 26 times, why?
- How to put it in gridview kinda thing in MVC?
Controller:
namespace EmployeeAttendance_app.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Message = "Employee Attendance";
var DataContext = new EmployeeAtdDataContext();
var EmployeeAtd = from emp in DataContext.EmployeeAtds
select emp;
return View(EmployeeAtd);
}
}
View:
<ul>
@foreach (EmployeeAttendance_app.Models.EmployeeAtd emp in (IEnumerable<Object>)ViewData.Model)
{
<li>@emp.EmplName</li>
}
</ul>
Model contains Linq-to-SQL class named EmployeesAtd
.
View has been created via this query:
SELECT
dbo.HrEmployee.EmplID, dbo.HrEmployee.EmplName, dbo.AtdRecord.RecDate,
dbo.AtdRecord.RecTime, dbo.HrDept.DeptName
FROM
dbo.HrDept
RIGHT OUTER JOIN
dbo.HrEmployee ON dbo.HrDept.DeptID = dbo.HrEmployee.DeptID
LEFT OUTER JOIN
dbo.AtdRecord ON dbo.HrEmployee.EmplID = dbo.AtdRecord.EmplID