I'm new to C# and MVC and I'm working on a homework assignment. Right now I'm stuck on the last thing to do in my project, which is a Html.DropDownListFor()
.
I've got a Model which gets the information I want: Newsmodel.cs
public IQueryable<SelectListItem> returnCatagory()
{
return (db.groups
.AsQueryable()
.Select(s => new SelectListItem() {
Value = s.ID.ToString(),
Text = s.Flokkur
})
);
}
Then a create()
in my HomeController.cs
//get
public ActionResult Create()
{
NewsModel model = new NewsModel();
model.Dagsetning = DateTime.Now;
return View(model);
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(NewsModel model)
{
if (ModelState.IsValid)
{
New news = new New();
news.Fyrirsögn = model.Fyrirsögn;
news.Flokkur = model.Flokkur;
news.Frétt = model.Frett;
news.Date = model.Dagsetning;
model.Dagsetning = DateTime.Now;
news.ID = model.ID;
nr.Add(news);
nr.Save();
return View("Saved");
}
return View(model);
}
Finally I've got the Create.aspx view
<%@ Page Title=""
Language="C#"
MasterPageFile="~/Views/Shared/Site.Master"
Inherits="System.Web.Mvc.ViewPage<MvcApplication1.Models.NewsModel>" %>
...
<div class="editor-label">
<%: Html.LabelFor(model => model.Flokkur) %>
</div>
<div class="editor-field">
<%: Html.TextBoxFor(model => model.Flokkur) %>
<%: Html.ValidationMessageFor(model => model.Flokkur) %>
<%: Html.DropDownListFor(..) %>
</div>
I've tried about everything for the <%: Html.DropDownListFor(..) %>
, but frankly I've got no idea what's missing or what has to be done so I can access it. Nerddinner did not help me much here.