Проблема в контроллерах web api
ПРИВЕТ,
Я работаю в проекте web api с использованием Visual studio 2017 на языке VB
Я создал несколько контроллеров, и они прекрасно работают на моем компьютере и в интернете,
затем я создал новые контроллеры, используя тот же код, что и старые, и они прекрасно работают на моем компьютере, но когда я звоню им с хостинга онлайн, я получаю ответ 404 "не найден тип, соответствующий названному контроллеру"
Что я уже пробовал:
пример рабочего контроллера:
Imports System.Web.Http Namespace Controllers Public Class BanksController Inherits ApiController Dim Table As String = "Banks" ' GET: api/Banks Public Function GetValues() As Object Return SqlToJson("SELECT BankId, BankName FROM " & Table) End Function ' GET: api/Banks/5 Public Function GetValue(ByVal id As Integer) As Object Return SqlToJson("SELECT BankId, BankName FROM " & Table & " Where BankId = " & id) End Function ' POST: api/Banks Public Function PostValue(<FromBody()> ByVal value As Object) As Object Return InsertFromJson(value, Table) End Function ' PUT: api/Banks/5 Public Function PutValue(ByVal id As Integer, <FromBody()> ByVal value As Object) As Object Return UpdateFromJson(value, Table, " Where BankId = " & id) End Function ' DELETE: api/Banks/5 Public Function DeleteValue(ByVal id As Integer) As Object Return DeleteRecord(Table, " Where BankId = " & id) End Function End Class End Namespace
пример контроллера, который отвечает с помощью 404
Imports System.Web.Http <pre lang="vb">Namespace Controllers Public Class BuildingsController Inherits ApiController Dim Table As String = "Buildings" ' GET: api/Buildings Public Function GetValues() As Object Return SqlToJson("SELECT * FROM " & Table) End Function ' GET: api/Buildings/5 Public Function GetValue(ByVal id As Integer) As Object Return SqlToJson("SELECT * FROM " & Table & " Where BuildingId = " & id) End Function ' POST: api/Buildings Public Function PostValue(<FromBody()> ByVal value As Object) As Object Return InsertFromJson(value, Table) End Function ' PUT: api/Buildings/5 Public Function PutValue(ByVal id As Integer, <FromBody()> ByVal value As Object) As Object Return UpdateFromJson(value, Table, " Where BuildingId = " & id) End Function ' DELETE: api/Buildings/5 Public Function DeleteValue(ByVal id As Integer) As Object Return DeleteRecord(Table, " Where BuildingId = " & id) End Function End Class End Namespace
Mohamed Sultan
Система Импорта.Нет.Протоколу HTTP.Заголовки
Система Импорта.Веб.Протокол HTTP
Система Импорта.Веб.Протоколу HTTP.Коров
Публичный Модуль WebApiConfig
Общественные суб регистрации(как byval config как HttpConfiguration)
"Конфигурация и сервисы веб-API
конфиг.EnableCors(Новая Нем("*", "*", "*"))
- Маршруты веб-API
конфиг.MapHttpAttributeRoutes()
конфиг.Маршруты.MapHttpRoute(имя:="ControllersApi", routeTemplate:="АПИ/{контроллера}/{ИД}", по умолчанию:=новая с {.ИД = RouteParameter.Необязательный})
-конфиг.Маршруты.MapHttpRoute(
название: "ControllersApi",
'routeTemplate: "api/{controller}/{action}/{id}",
'по умолчанию: New { id = RouteParameter.Необязательный }
');
конфиг.Форматеры.JsonFormatter.SupportedMediaTypes.Add(New MediaTypeHeaderValue("text/html"))
Конец Подводной Лодки
Конечный Модуль