Asp.net mvc IsValid){trackdayrep.Add(trackday);trackdayrep.Save();}@Muhammad Awais,在POST操作中,只需将视图模型作为操作参数重用即可。SelectedExperienceId和SelectedS

Asp.net mvc IsValid){trackdayrep.Add(trackday);trackdayrep.Save();}@Muhammad Awais,在POST操作中,只需将视图模型作为操作参数重用即可。SelectedExperienceId和SelectedS,asp.net-mvc,model-view-controller,drop-down-menu,viewdata,Asp.net Mvc,Model View Controller,Drop Down Menu,Viewdata,IsValid){trackdayrep.Add(trackday);trackdayrep.Save();}@Muhammad Awais,在POST操作中,只需将视图模型作为操作参数重用即可。SelectedExperienceId和SelectedSizeId属性将自动填充用户选择。在更新处理它们之前,您可以检查是否(ModelState.IsValid),以确保用户从下拉列表中选择了一些值。它还会将这些值添加到与父表关联的表中,例如事件(表)与产品(表)有关系吗,创建事件之前,数据还会将


IsValid){trackdayrep.Add(trackday);trackdayrep.Save();}@Muhammad Awais,在POST操作中,只需将视图模型作为操作参数重用即可。
SelectedExperienceId
SelectedSizeId
属性将自动填充用户选择。在更新处理它们之前,您可以检查
是否(ModelState.IsValid)
,以确保用户从下拉列表中选择了一些值。它还会将这些值添加到与父表关联的表中,例如事件(表)与产品(表)有关系吗,创建事件之前,数据还会将值插入到与该事件相关的产品(表)中。如果我想运行循环,例如我想在0到200的下拉列表中显示值,如果我想运行循环,例如我想在0到200的下拉列表中显示值,该怎么办
`//View <tr><td>Experience level</td><td><div class="editor-field">
                    <%: Html.DropDownListFor(model => model.ExperienceLevelID, (SelectList)ViewData["Experience"], "--select--")%>
                    <%: Html.ValidationMessageFor(model => model.ExperienceLevelID) %>
                </div></td></tr>`<tr><td>Size of Company</td><td><div class="editor-field">

                <%: Html.DropDownList("Value", (SelectList)ViewData["size"], "--select--")%>

 public ActionResult Create()//Controller
    {
        ViewBag.mode = "create";IExperienceLevelRepository expLevelResp = new ExperienceLevelRepository();
        IQueryable<ExperienceLevel> expLevel = expLevelResp.GetAllExperienceLevels().OrderBy(ExperienceLevel => ExperienceLevel.Name);
        ViewData["Experience"] = new SelectList(expLevel, "ID", "Name");


        IEnumerable<SelectListItem> companySizes = new List<SelectListItem>
                                             {

                                                 new SelectListItem
                                                     {
                                                       Text = "Large Company",
                                                          Value = "large"

                                                     }
                                             };
        ViewData["size"] = new SelectList(companySizes, "Value", "Text");



        return View();
    } 
public class MyViewModel
{
    [Required]
    public string SelectedExperienceId { get; set; }
    public IEnumerable<SelectListItem> Experiences { get; set; }

    [Required]
    public string SelectedSizeId { get; set; }
    public IEnumerable<SelectListItem> Sizes { get; set; }
}
public ActionResult Index()
{
    var model = new MyViewModel
    {
        Experiences = new[]
        {
            new SelectListItem { Value = "exp1", Text = "Experience 1" },
            new SelectListItem { Value = "exp2", Text = "Experience 2" },
            new SelectListItem { Value = "exp3", Text = "Experience 3" },
        },
        Sizes = new[]
        {
            new SelectListItem { Value = "s1", Text = "Size 1" },
            new SelectListItem { Value = "s2", Text = "Size 2" },
            new SelectListItem { Value = "s3", Text = "Size 3" },
        }
    };
    return View(model);
}
<%@ Page 
    Language="C#" 
    MasterPageFile="~/Views/Shared/Site.Master"     
    Inherits="System.Web.Mvc.ViewPage<AppName.Models.MyViewModel>" 
%>

...    

<%= Html.DropDownListFor(
    x => x.SelectedExperienceId,
    new SelectList(Model.Experiences, "Value, "Text"),
    "-- Experience --"
) %>
<%= Html.ValidationMessageFor(x => x.SelectedExperienceId) %>

...

<%= Html.DropDownListFor(
    x => x.SelectedSizeId,
    new SelectList(Model.Sizes, "Value, "Text"),
    "-- Size --"
) %>
<%= Html.ValidationMessageFor(x => x.SelectedSizeId) %>
public List<SelectListItem> GetSomeSelectList()
{
  var items = SomeCollection
              .OrderByDescending(s => s.SomeProperty)
              .Select(s => new SelectListItem { 
                 Value = s.SomeProperty, 
                 Text = s.SomeOtherProperty })
              .ToList();
  items.Insert(0, new SelectListItem { Value = "0", Text = "Some Default" });
  return items;
}
<%: Html.DropDownListFor(m => m.SomeProperty, Model.GetSomeSelectList()) %>