私はASP.Net MVCにはかなり新しいので、明らかにすべきことは何でも許してください。Asp.net ListプロパティのMVC多重選択
私は、リストであるプロパティを含むオブジェクトを持っています。私はどのように私は作成でこれを実装する必要があります知りません。私は複数のDangradesを選択することができるようにしたい作成ビューで
public class TeamMember
{
public int TeamMemberId { get; set; }
public string FristName { get; set; }
public string LastName { get; set; }
public DateTime BirthDate { get; set; }
public string Biographie { get; set; }
public virtual Image Image { get; set; }
public virtual List<DanGrade> DanGrades { get; set; }
}
: これはオブジェクトです。
私はこのようになり、それ用のエディタテンプレートの変更を行おうとしました:
@using BudoschoolTonNeuhaus.Models
@model BudoschoolTonNeuhaus.Models.TeamMember
@{
var db = new ApplicationDbContext();
var danGrades = db.DanGrades.ToList();
}
<select multiple name="@ViewData.TemplateInfo.HtmlFieldPrefix" class="dropdown">
@foreach (var dan in danGrades)
{
<option value="@">
@dan.DanGradeId: @dan.BudoSport, @dan.Grade
</option>
}
</select>
をしかし、これは、私はそれは、そのだけであなたのことを作成するビューでみとめdangradeラベルを示すだろうと思った結果を与えるものではありませんここで見ることができます。
@model BudoschoolTonNeuhaus.Models.TeamMember
@{
ViewBag.Title = "Create";
Layout = "~/Views/Shared/_Admin_Layout.cshtml";
}
<div class="wrapper">
<h2>Create</h2>
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>TeamMember</h4>
<hr />
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
@Html.LabelFor(model => model.FristName, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.FristName, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.FristName, "", new { @class = "text-danger" })
</div>
</div>
.... // controls for other properties of model
<div class="form-group">
@Html.LabelFor(model => model.DanGrades, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.DanGrades, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.DanGrades, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.Image, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
<input type="file" id="Image" name="Image" hidden />
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
}
<div>
@Html.ActionLink("Back to List", "Index")
</div>
</div>
現在のHTML出力:
ご協力いただきありがとうございます!
にファイルあなたは私たちに出力HTMLを表示することができますか?あなたは "複数のダングラーデのラベル"とはどういう意味ですか? – Wndrr
また、ビューでデータベース呼び出しを行ってはいけないというのが良い方法です。これはコントローラまたは専用のクラスにあるはずです – Wndrr
@Wndrrヒントありがとう!:)現在の出力が – Diceble