ASP.NET无法从我的视图中引用模型

时间:2016-12-14 22:44:44

标签: c# asp.net asp.net-mvc

我有一个问题,我无法从我创建的索引视图中引用我的模型Samochody。我在名为Models的文件夹中创建了这个模型,所有这些都应该可以工作,但看起来我并不像我想象的那样聪明:D你能帮我解决这个问题吗?这是代码

Samochody.cs模型:

using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Web;
using static WebApplication2.Models.Samochody;

namespace WebApplication2.Models
{
    public class Samochody
   {
    public class Car
    {
        public int Id { get; set; }
        public string Brand { get; set; }
        public string Model { get; set; }
        public decimal Price { get; set; }
        public DateTime Bought { get; set; }
        public DateTime Sold { get; set; }
    }

}

public class CarDBCtxt : DbContext
{
    public DbSet<Car> Cars { get; set; }
}

}

和Index.cshtml

@model Samochody.Models.Car //error here, can't find Samochody
@{
   Layout = null;
}

<!DOCTYPE html>

<html>
<head>
   <meta name="viewport" content="width=device-width" />
   <title>Index</title>
</head>
<body>

<div>

</div>
</body>
</html>

这是我第二次遇到此类错误,而且来自2个不同的教程。

1 个答案:

答案 0 :(得分:1)

您在index.cshtml中缺少类的命名空间。所以需要:

@model WebApplication2.Models.Samochody.Models.Car

或另一种方法是编辑视图文件夹中的 web.config 文件,并在其中添加命名空间:

<system.web.webPages.razor>
  <host ...
  <pages ...
   <namespaces>
     <add ...
     <add namespace="WebApplication2.Models" />

然后您不需要在每个.cshtml文件中添加命名空间。