아내를위한 웹 사이트를 만듭니다. 그녀는 선생님이며 학생들을 위해 운동을 할 수있는 가능성을 갖고 싶어합니다.ASP .NET MVC4 뷰잉 및 모델 바인딩에 새 항목 추가
연습 1 : 올바른 단어를 사용하여 문장 채우기 :이 사건은 그녀가 예를 들어 다음과 같은 운동을 만들려는 것입니다
- 내 아내가 30 ........ ..... 옛날 내가 30이 도시에 살고
- .........
나는 다음과 같은 모델이 있습니다
,691을public class Exercise
{
[Key]
public Guid Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public ExerciseType Type { get; set; }
public DifficulityLevel DifficulityLevel { get; set; }
public List<ExerciseItem> Items { get; set; }
public DateTime TimeOfCreation { get; set; }
public DateTime TimeOfModification { get; set; }
}
public class ExerciseItem
{
[Key]
public Guid Id { get; set; }
public string Content { get; set; }
public List<ExerciseItemOption> Options { get; set; }
public ExerciseItemOption CorrectSelection { get; set; }
}
나는 내 운동을 위해보기를 만듭니다. 이름, 설명, Difficulity 레벨 및 유형과 같은 기본 속성을 채울 수 있습니다. 그런 다음 "운동 항목 추가"버튼을 만들고 싶습니다. 클릭하면 새로운 ExerciseItem을 제공 할 수있는 부분 뷰 (또는 다른 것)가 동적으로 추가되어야합니다. 난 다음에 시도했다 : 을 나는 버튼
@Ajax.ActionLink("Add exercise item",
"AddExerciseItem",
"Exercise", new AjaxOptions() { HttpMethod="GET", InsertionMode = InsertionMode.InsertBefore, UpdateTargetId="ExerciseItems"})
하고 해당 사업부를 추가 한 :
public ActionResult AddExerciseItem()
{
return PartialView("ExerciseItem", new ExerciseItem());
}
하고 다음과 같이
<div id="ExerciseItems"></div>
내 액션 메소드 보인다 부분보기 :
@model ElangWeb.Models.ExerciseItem
<fieldset>
<legend>ExerciseItem</legend>
@Html.HiddenFor(model => model.Id)
<div class="editor-label">
@Html.DisplayNameFor(model => model.Content)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Content, new { style = "width:200px" })
</div>
</fieldset>
잘 동작합니다. 나는 전체 운동을 만들기위한 버튼을 클릭하면 그러나, 나는 내 모델에서 ExerciseItem 수집을하지 않습니다
public ActionResult Create(Exercise exercise)
{
using (PersistanceManager pm = new PersistanceManager())
{
exercise.Id = Guid.NewGuid();
exercise.TimeOfCreation = DateTime.Now;
exercise.TimeOfModification = DateTime.Now;
pm.ExcerciseRepository.Add(exercise);
}
return RedirectToAction("Index");
}
가 어떻게 ExerciseItem 내 모델 운동에 객체를 추가 내 목록을 결합하기 위해 코드를 변경해야 ?
왜 부분 편집기를 만들기 위해 사용합니까? 역동적 인 연습 문제가 있으니까요? –
네, 그렇습니다. 나는 운동 아이템의 다이내믹 한 숫자를 갖고 싶습니다. –