DropDownList
アイテムがいっぱいのMVC Webページがあります。Database
すべてのアイテムは、ディスク上のファイルを表すmy のオブジェクトです。
私のオブジェクトクラス:
namespace CapturesMVC.Models
public class Capture : IEquatable<Capture>
{
public int id { get; set; }
[Display(Name = "File Name")]
public string fileName { get; set; }
[Display(Name = "Browser")]
public string browser { get; set; }
[Display(Name = "Mobile")]
public string mobile { get; set; }
[Display(Name = "Protocol")]
public string protocol_site { get; set; }
public string family { get; set; }
public sealed override bool Equals(object other)
{
return Equals(other as Capture);
}
public bool Equals(Capture other)
{
if (other == null)
{
return false;
}
else
{
return this.protocol_site == other.protocol_site;
}
}
public override int GetHashCode()
{
return protocol_site.GetHashCode();
}
}
CaptureDBContext クラス:
namespace CapturesMVC.Models
public class CaptureDBContext : DbContext
{
public DbSet<Capture> Captures { get; set; }
}
これは私のコントローラーです:
[HttpPost]
public ActionResult Index(string File)
{
var list = db.Captures.Where(x => x.protocol== File).ToArray();
ViewBag.Files = list;
return View();
}
インデックス.cshtml:
@using (Html.BeginForm())
{
<div>
@Html.DropDownList("File", new SelectList(ViewBag.Files, "protocol_site", "protocol_site"), "Select webmail site", new { style = "vertical-align:middle;" })
<button type="submit">Select</button>
</div>
}
</body>
my からアイテムを選択しDropDownList
てボタンを押すと、Index
アクションが実行され、オブジェクト プロパティの 1 つに一致するオブジェクトのリストと、リスト内の Web ページに表示したいこのリストが返されますが、現在の状況では、このリストは私のに挿入されましたDropDownList
。