System.Web.Mvc.WebViewPage<TModel>.Model.get 返回空值
System.Web.Mvc.WebViewPage<TModel>.Model.get returned null
家庭控制器
public ActionResult Index()
{
using (MvcDB dataBase = new MvcDB())
{
}
return View();
}
public void DataDoldur()
{
using (MvcDB dataBase = new MvcDB())
{
Kategori ktgr1 = new Kategori();
ktgr1.KategoriAdi = "Spor";
dataBase.Kategori.Add(ktgr1);
dataBase.SaveChanges();
}
}
Index.cshtml
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
<div>
<label>Kategori Seçiniz:</label>
</div>
<select name="Seçilen Kategori">
@foreach (Kategori kategori in Model)
{
<option>@kategori.KategoriAdi</option>
}
</select>
<input type="submit" value="Haberleri Listele " />
</div>
</body>
</html>
"System.Web.Mvc.WebViewPage.Model.get returned null" 错误我明白了。我应该怎么办?我的数据库已准备就绪,但我无法使用它。我认为这是真的,但行不通。
我怎样才能让 foreach 工作?没看懂。
欢迎来到社区。错误是因为您没有在视图中定义模型。
尝试以下操作:
a) 创建一个 _Layout.cshtml
文件 - 它就像 Views/Shared 文件夹下的主文件。
b) 将所有 HTML 放入布局和视图文件中 - 正文中只包含您需要的代码。
c) 从您的 get 控制器方法发送模型。
d) 在您的视图中接收模型并在 foreach
中迭代(或)使用 HTML Helper
构建下拉列表
_Layout.cshtml :
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
@RenderBody()
</body>
</html>
Index.cshtml :
@model <Your Model >
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div>
<div>
<label>Kategori Seçiniz:</label>
</div>
<select name="Seçilen Kategori"> // Instead of using it this way, please go with @Html.DropDownListFor
@foreach (Kategori kategori in Model)
{
<option>@kategori.KategoriAdi</option>
}
</select>
<input type="submit" value="Haberleri Listele " />
</div>
家庭控制器:
public ActionResult Index()
{
using (MvcDB dataBase = new MvcDB())
{
}
return View(< YourModel > );
}
您需要像上面那样填充您的模型并将其发送到视图。
家庭控制器
public ActionResult Index()
{
using (MvcDB dataBase = new MvcDB())
{
}
return View();
}
public void DataDoldur()
{
using (MvcDB dataBase = new MvcDB())
{
Kategori ktgr1 = new Kategori();
ktgr1.KategoriAdi = "Spor";
dataBase.Kategori.Add(ktgr1);
dataBase.SaveChanges();
}
}
Index.cshtml
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
<div>
<label>Kategori Seçiniz:</label>
</div>
<select name="Seçilen Kategori">
@foreach (Kategori kategori in Model)
{
<option>@kategori.KategoriAdi</option>
}
</select>
<input type="submit" value="Haberleri Listele " />
</div>
</body>
</html>
"System.Web.Mvc.WebViewPage.Model.get returned null" 错误我明白了。我应该怎么办?我的数据库已准备就绪,但我无法使用它。我认为这是真的,但行不通。 我怎样才能让 foreach 工作?没看懂。
欢迎来到社区。错误是因为您没有在视图中定义模型。
尝试以下操作:
a) 创建一个 _Layout.cshtml
文件 - 它就像 Views/Shared 文件夹下的主文件。
b) 将所有 HTML 放入布局和视图文件中 - 正文中只包含您需要的代码。
c) 从您的 get 控制器方法发送模型。
d) 在您的视图中接收模型并在 foreach
中迭代(或)使用 HTML Helper
_Layout.cshtml :
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
@RenderBody()
</body>
</html>
Index.cshtml :
@model <Your Model >
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div>
<div>
<label>Kategori Seçiniz:</label>
</div>
<select name="Seçilen Kategori"> // Instead of using it this way, please go with @Html.DropDownListFor
@foreach (Kategori kategori in Model)
{
<option>@kategori.KategoriAdi</option>
}
</select>
<input type="submit" value="Haberleri Listele " />
</div>
家庭控制器:
public ActionResult Index()
{
using (MvcDB dataBase = new MvcDB())
{
}
return View(< YourModel > );
}
您需要像上面那样填充您的模型并将其发送到视图。