C# 找不到类型或命名空间名称

C# 找不到类型或命名空间名称,c#,iqueryable,C#,Iqueryable,我用这个: public class ConstructionRepository { private CRDataContext db = new CRDataContext(); public IQueryable<Material> FindAllMaterials() { //return db.Materials; var materials = from m i

我用这个:

   public class ConstructionRepository
    {
        private CRDataContext db = new CRDataContext();

        public IQueryable<Material> FindAllMaterials()
        {
            //return db.Materials;
            var materials = from m in db.Materials
                            join Mt in db.MeasurementTypes on m.MeasurementTypeId equals Mt.Id
                            select new Material
                            {
                                Mat_Name =  m.Mat_Name,
                                MeasurementTypeId =  Mt.Name, 
                                 Mat_Type = m.Mat_Type };
            return materials.AsQueryable();
        }
    }
公共类构造存储库
{
private CRDataContext db=new CRDataContext();
公共可查询FindAllMaterials()
{
//退库材料;
var materials=从m开始,单位为db.materials
在m上的db.MeasurementTypes中加入Mt。MeasurementTypeId等于Mt.Id
选择新材料
{
材料名称=m.Mat\u名称,
MeasurementTypeId=机器名称,
Mat_Type=m.Mat_Type};
返回物料。AsQueryable();
}
}
这给了我唯一的错误

  • “CrMVC.Models.Material”不包含“MatId”、“MesName”、“MesType”的定义
  • 编辑:
    “MatId”,“MesName”,“MesType”只是我给出的假名称,这是错误的。

    我想说的是,修复第一个错误将是一个好的开始-您确定您在项目中引用了包含
    MaterialsView
    的程序集,并且在代码文件顶部添加了
    using
    指令以包含
    材料视图

    其他两个错误[参见编辑]第一个和第三个错误将在正确引用并包含
    MaterialsView
    类型后消失


    编辑:As,第二个错误肯定是由于缺少对
    AsQueryable

    的调用,我想说修复第一个错误将是一个很好的开始-您确定在项目中引用了包含
    MaterialsView
    的程序集,并且在顶部添加了
    using
    指令吗要包含
    MaterialsView
    名称空间的代码文件的名称空间

    其他两个错误[参见编辑]第一个和第三个错误将在正确引用并包含
    MaterialsView
    类型后消失

    Edit:As,第二个错误肯定是由于缺少对
    AsQueryable

    1)的调用。请确保“MaterialView”类所在的名称空间在此代码文件中是引用的。如果它被引用,请检查以确保文件正在生成,并且没有抛出任何编译器错误-有时它可以掩盖真正的错误

    2) 像这样的LINQ查询将返回IEnumerable实例,而不是IQueryable。返回物料时,请调用materials.AsQueryable()

    3) 我没有看到在此方法中调用ToList(),编译器在哪里告诉您发生了此错误?

    1)确保“MaterialView”类所在的名称空间在此代码文件中是引用的。如果它被引用,请检查以确保文件正在生成,并且没有抛出任何编译器错误-有时它可以掩盖真正的错误

    2) 像这样的LINQ查询将返回IEnumerable实例,而不是IQueryable。返回物料时,请调用materials.AsQueryable()


    3) 我没有看到在此方法中调用ToList(),编译器在哪里告诉您发生了此错误?

    找不到类型或命名空间名称MaterialsView(您是否缺少using指令或程序集引用?)


    (是的,这是一个答案)。

    找不到类型或命名空间名称MaterialsView(是否缺少using指令或程序集引用?)


    (是的,这是一个答案)。

    材质类必须具有与选择新材质{…}子句中使用的名称相同的可设置属性,您不能只是虚构这些属性。

    材质类必须具有与选择新材质{…}子句中使用的名称相同的可设置属性,你不能只是编造这些。

    似乎找不到MaterialsView。缺少包含或引用?也可能导致错误2。3找不到未知项MaterialView。缺少包含或引用?也可能导致错误2。3 unknown+1第二个错误肯定是因为缺少对
    AsQueryable
    nice catch的调用+1第二个错误肯定是因为缺少对
    AsQueryable
    nice catch的调用!