Visual Studio 2013 не распознает ссылку на мою новую модель?

1

Я работаю над приложением ASP.Net. Для одной части этого у меня есть определенные модели, хранящиеся в их собственной папке:

Изображение 174551

У меня есть ссылка на мои Models/Default/ folder в одном из моих CustomControls: using Project.Models.Default; Однако, когда я пытаюсь сделать ссылку в моей CustomControl YearsOfService моей модели по умолчанию Years_Of_Service, Visual Studio (2013) не собирает мою Years_Of_Service или Years_Of_Service_Data с моей моделью Models/Default/ папкой по Models/Default/:

Изображение 174551

У кого-нибудь есть идеи, почему это происходит?

EDIT:

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; }
    }
}
  • 1
    Каково содержание этих файлов? Находятся ли классы внутри в правильном пространстве имен (например, XXXX.Models.Default)?
  • 1
    Покажите нам содержимое Years_Of_Service.cs чтобы дать нам подсказку!
Показать ещё 2 комментария
Теги:
visual-studio
model
visual-studio-2013

2 ответа

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 как в имени файла, так и имени класса.

  • 0
    Спасибо за помощь Белогикс. Различия, которые, я думаю, связаны с тем, что я переименовал «YearsOfServiceData», например, в «Years_Of_Service_Data», но VS2013 не изменил все мои ссылки по какой-то причине.
1

Классы, содержащиеся в этих файлах, находятся в неправильном пространстве имен. Укажите правильное значение:

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

В качестве альтернативы, обратитесь к ним с их пространством имен как XXXX.Models.YearsOfService

Ещё вопросы

Сообщество Overcoder
Наверх
Меню