View无法识别我的视图模型

ftd*_*per 5 asp.net-mvc asp.net-mvc-4

我的viewmodel在不同的项目(类库)中.我添加了参考.但是当我从我的mvc4视图中调用它时,如@model Fancy.Management.Model.Home.IndexModel.查看无法识别它.我不知道的问题是什么.我的观点如下所示:

@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>
Run Code Online (Sandbox Code Playgroud)

我的控制器如下所示:

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

}
}
Run Code Online (Sandbox Code Playgroud)

我的模型如下所示:

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; }
}
}
Run Code Online (Sandbox Code Playgroud)

Ami*_*aqi 10

你在模型中加了一个参考?好的,这还不够,以便您的视图可以看到它.

首先,打开位于Views文件夹中的web.config文件.然后,为您的模型类添加命名空间标记,如下所示:

<system.web.webPages.razor>
// ...
<pages pageBaseType="System.Web.Mvc.WebViewPage">
  <namespaces>
    // ...
    <add namespace="Fancy.Management.Model" />
    // ...
  </namespaces>
</pages>
Run Code Online (Sandbox Code Playgroud)

最后@model在你的视图中改变你的样子:

@model Home.IndexModel
Run Code Online (Sandbox Code Playgroud)

问题应该消失......