Click here to Skip to main content
15,860,972 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
See more:
Hello everyone, I am trying out asp.net mvc for the first time...and i am having problem understanding the new concepts. I created an entry form for an employee...the ViewModel is as follows:-
C#
public class AddEmployeeViewModel
    {
        public SelectList DepartmentList { get; set; }

        public AddEmployeeViewModel()
        {
            TestDataContext tstContext = new TestDataContext();
            Repository<Department> deptRepo = new Repository<Department>(tstContext);

            var Deptartments = deptRepo.FindAll().Select(x => new { x.Department_Name, x.Department_ID });

            DepartmentList = new SelectList(Deptartments.AsEnumerable(), "Department_ID", "Department_Name", 1);
        }
    }

The Controller...

public ActionResult Create()
        {
            AddEmployeeViewModel addVm = new AddEmployeeViewModel();
            

            return View(addVm);
        }


and the View looks like,

HTML
<% using (Html.BeginForm()) { %>
    <%: Html.ValidationSummary(true) %>

    <fieldset>
        <legend>AddEmployeeViewModel</legend>
        <table>
            <tr>
                <td>Employee Name</td>
                <td><%= Html.TextBox("txtEmployeeName") %></td>
                
            </tr>
            <tr>
                <td>Gender</td>
                <td><select>
                    <option value="0">Male</option>
                    <option value="1">Gender</option>
                </select></td>
            </tr>
            <tr>
                <td>Date Of Birth</td>
                <td><%= Html.TextBox("txtDateOfBirth") %></td>
            </tr>
            <tr>
                <td>Department</td>
                <td><%= Html.DropDownList("Department",Model.DepartmentList) %></td>
            </tr>
        </table>
        <p>
            <input type="submit" value="Create" />
        </p>
    </fieldset>
<% } %>

<div>
    <%: Html.ActionLink("Back to List", "Index") %>


The Error shows on the Helper for dropdownlist...says Entry point not found...So i changed my code and wrote the Code in the Controller as

C#
public ActionResult Create()
        {
            TestDataContext tstContext = new TestDataContext();
            Repository<Department> deptRepo = new Repository<Department>(tstContext);

            var queryDept = deptRepo.FindAll().Select(x => new { x.Department_Name, x.Department_ID });
            var viewModel = new AddEmployeeViewModel { DepartmentList = new SelectList(queryDept.AsEnumerable(),"Department_ID","Department_Name",1) };


            return View(viewModel);
        }


...This way works...my question is, am i not doing the same thing in both cases?...I just want my buisness logic to be away from the controller....Can anyone plz explain to me why the first is giving me the Entrypointnotfound error??
Posted

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900