Visual Studio 2013无法识别对我的新模型的引用?

时间:2014-09-30 15:09:32

标签: c# asp.net visual-studio model visual-studio-2013

我正在开发ASP.Net应用程序。对于其中的一部分,我将特定模型存储在它们自己的文件夹中:

Models

我在我的一个CustomControls中引用了我的Models/Default/文件夹:using Project.Models.Default;但是,当我尝试在我的CustomControl YearsOfService中将引用设置为我的默认模型Years_Of_Service时,Visual Studio(2013)没有选择我的Years_Of_ServiceYears_Of_Service_Data我的Models/Default/文件夹的模型:

Code2

任何人都有任何想法为什么会这样?

修改

Years_Of_Service.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace PROJECT.Models
{
    public class YearsOfService
    {
        public string Year { get; set; }
        public decimal ServiceCredited { get; set; }
        public decimal Salary { get; set; }
        public string CoveredEmployer { get; set; }
    }
}

Years_Of_Service_Data.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace PROJECT.Models
{
    public class YearsOfServiceData
    {
        public List<YearsOfService> YearsOfService { get; set; }
    }
}

2 个答案:

答案 0 :(得分:1)

这些文件中包含的类只是在错误的命名空间中。像这样指定正确的:

namespace XXXX.Models.Default 
{
    public class YearsOfService
    {
        //Snip
    }
}

或者,请将它们的名称空间称为XXXX.Models.YearsOfService

答案 1 :(得分:1)

您目前有:

namespace PROJECT.Models

但是这也应该包含Default,如下所示:

namespace PROJECT.Models.Default

所以,它应该像这样结束:

namespace PROJECT.Models.Default
{
    public class YearsOfServiceData
    {
        public List<YearsOfService> YearsOfService { get; set; }
    }  
}

最后,您可能希望保持文件名和类名相同,否则会让人感到非常困惑!因此,在文件名和类名中都坚持使用 Years_Of_Service_Data YearsOfServiceData