ビューは次のとおりです。
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<TravelDeskWebsite.Models.TestModel>" %>
<!DOCTYPE html>
<html>
<head>
<title>TestPage</title>
</head>
<body>
<% using (Html.BeginForm())
{ %>
<%= Html.DropDownListFor(x => x.SelectedText, ViewBag.Tests as SelectList)%>
<%: (string)ViewBag.Test %>
<% } %>
</body>
</html>
コントローラー:
public ActionResult TestFunc(TestModel model)
{
List<string> TestList = new List<string>();
TestList.Add("Help");
TestList.Add("Please");
ViewBag.Tests = new SelectList(TestList, model.SelectedText);
ViewBag.Test = model.SelectedText;
return View();
}
ここで達成したかったのは、選択した値を同じビューにテキストとして表示することだけです。問題は、選択した値がある場合でも、ViewBagがnullを返すことです。テストすると、null例外がスローされます。