Обновил класс подклассом, и он не отображается в других классах

#vb.net #web-services #visual-studio-2017

Вопрос:

Язык: VB.net в среде Visual Studio 2017: 4.7.2

У меня есть веб — служба на сервере IIS. Недавно я обновил класс контроллера, класс сведений и класс модели, добавив подкласс в класс сведений и добавив необходимые функции и код api в классы модели и контроллера. Проблема, с которой я сталкиваюсь, заключается в том, что класс модели и контроллера не видит добавленного подкласса в классе сведений. VS выдает ошибку, что класс не определен, и intellisense его тоже не видит.

Вещи, которые я пытался перезапустить vs…no перейдите к остановке веб-сайта в IIS и перезапуску vs…no идите, удаляя и перестраивая классы manually…no иди

Создал тестовую веб-службу на локальном компьютере и добавил точные файлы на сервер IIS, и там нет никаких ошибок, и все работает нормально. Я не знаю, является ли это проблемой vs или я просто что-то упускаю из виду в коде.

Все остальные подклассы и функции отображаются, за исключением класса ShowS, который был добавлен позже.

Класс деталей

 Public Class Details
  Public Class SomeClass
    Public Property Property1
  End Class
  Public Class ShowS
    Public Property Property1
    Public Property Property2
  End Class
End Class
 

Класс Модели

 Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Data
Imports System.Data.Sql
Imports webservice.Details

Public Class Model
  Public Function GetSomeClass() as SomeClass
    ...processing code here
  End Function
  Public Function GetShows() as ShowS ...ShowS isn't found by vs or intellisense
    ...processing code here
  End Function
End Class
 

Класс Контроллера

 Imports System 
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web.Http
Imports System.Net
Imports System.Net.Http
Imports System.Threading.Tasks
Imports webservice.Details
Imports webservice.Model

Public Class Controller
  Inherits ApiController

  <Route("api/mystuff/someclass")>
  <HttpGet>
  Public Function GetAllSomeClass() As IEnumeralble(Of SomeClass)
    Dim rtv as new webservice.Model
    return rtv.GetSomeClass
  End Function

  <Route("api/mystuff/shows")>
  <HttpGet>
  Public Function GetShows() as IEnumerable(Of ShowS) ...once again ShowS isn't being found in the details class
    Dim rtv as New webserive.Model
    Return rtv.GetShows ...isn't found in the Model class
  End Function
End Class
 

Комментарии:

1. Можете ли вы подтвердить, что у вас есть ссылка на проект, а не прямая ссылка на dll?

2. ДА. У меня есть ссылка на проект, а не прямая ссылка на dll. Он начал выдавать ошибку только после добавления подкласса, связанной функции и вызова api в существующий код.

3. Су … Почему ты сделал это внутренним классом?

4. Это веб-служба, поэтому существует класс контроллеров и класс моделей. Класс details можно объединить с классом модели, но в любом случае этого не должно происходить.

5. Вы создали проект после изменения класса?