这个asp.net mvc编译时错误状态是什么?

时间:2010-05-03 10:10:05

标签: c# asp.net-mvc compilation

我有一个存储库类,它有这个,

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using CrMVC.BusinessObjects;

namespace CrMVC.Models
{
    public class ConstructionRepository
    {
        private CRDataContext db = new CRDataContext();

        public IQueryable<MaterialsObj> FindAllMaterials()
        {
           var materials =  from m in db.Materials
             join Mt in db.MeasurementTypes on m.MeasurementTypeId equals Mt.Id
                select new MaterialsObj()
                   {
                       Id = Convert.ToInt64(m.Mat_id),
                       Mat_Name = m.Mat_Name,
                       Mes_Name = Mt.Name,
                   };
            return materials;

        }
    }
 }

我的MaterialsObj类位于CrMVC.BusinessObjects命名空间下,我在我的存储库类中使用它....

namespace CrMVC.BusinessObjects
{
    public class MaterialsObj
    {
         //My logic here
    }
}

但是当我编译这个时我得到了这个错误

c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET
Files\root\19360d4c\3d21e226\App_Web_materials.aspx.7d2669f4.a8f-zsw5.0.cs(148):
error CS0426: The type name 'Materials' does not exist 
 in the type 'CrMVC.Models.ConstructionRepository'

我错过了任何建议......

修改

我的存储库类中没有名为Materials的类,那么为什么我会收到此错误..

我的观看页面有这个,

    <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master"
 Inherits="System.Web.Mvc.ViewPage<IEnumerable<CrMVC.Models.ConstructionRepository+Materials>>" %>

1 个答案:

答案 0 :(得分:1)

当您可能想要引用CrMVC.Models.ConstructionRepository.Materials时,您正在引用ASPX中的CrMVC.BusinessObjects.MaterialsObj类型。