视图无法识别我的视图模型 [英] View doesn't recognized my view model
问题描述
我在不同项目(类库)中的视图模型.我添加了参考.但是当我从我的mvc4视图中调用它时,例如@model Fancy.Management.Model.Home.IndexModel.视图无法识别它.我不知道什么问题. 我的视图如下所示:
My viewmodel in different project(class library). I added reference. But when i call it from my mvc4 view like @model Fancy.Management.Model.Home.IndexModel. View not recognized it. What is the problem i dont know. My View is shown below:
@model Fancy.Management.Model.Home.IndexModel
<html>
<head>
<title>Giriş</title>
</head>
<body>
@Html.BeginForm(){
<table>
<tr>
<td>Kullanıcı Adı:</td>
<td>@Html.TextBoxFor(m=>m.UserName)</td>
</tr>
<tr>
<td>Şifre:</td>
<td>@Html.PasswordFor(m=>m.Password)</td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Giriş" /></td>
</tr>
</table>
}
</body>
</html>
我的控制器如下所示:
namespace Fancy.Web.Management.Controllers
{
#region Using Directives
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
#endregion
public class HomeController : Controller
{
#region Get
public ActionResult Index()
{
return View();
}
#endregion
}
}
我的模型如下所示:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Fancy.Management.Model.Home
{
public class IndexModel
{
public string UserName { get; set; }
public string Password { get; set; }
}
}
推荐答案
您向模型添加了引用?好的,这还不足以使您的视图可以看到它.
You added a ref to the model? Ok, that's not enough in order that your view can see it.
首先,打开Views
文件夹中的web.config文件.然后,为您的模型类添加一个名称空间标签,如下所示:
First, open the web.config file located in Views
folder. Then, add a namespace tag for your model class like the following:
<system.web.webPages.razor>
// ...
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
// ...
<add namespace="Fancy.Management.Model" />
// ...
</namespaces>
</pages>
,最后在您的视图中更改您的@model
,如下所示:
and finally change your @model
in your view like this:
@model Home.IndexModel
问题应该消失了……
这篇关于视图无法识别我的视图模型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!