У меня есть проект C#, где в моем классе контроллера можно ссылаться на библиотеку System.Web.Http, но в другом классе он не может. Ссылка была добавлена в общий проект, и оба класса имеют все необходимые директивы.System.Web.Http-сборка не всегда видна в том же проекте C#
Метод запроса System.Web.Http не может быть разрешен в некоторых случаях?
Вот фрагменты кода из двух классов:
Контроллеры/FormsController.cs
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Threading.Tasks;
using System.Web;
using System.Web.Http;
using System.Web.Http.Description;
using FormsImport.Models;
namespace FormsImport.Controllers
{
public class TCSTasksController : ApiController
{
[Route("api/TCSUploadFile")]
[AllowAnonymous]
public async Task<HttpResponseMessage> UploadCSVFile()
{
try
{
var httpRequest = HttpContext.Current.Request;
foreach (string file in httpRequest.Files)
{
HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created); // <-- the name Request does exists
.
.
.
}
CSVmanager.cs
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Threading.Tasks;
using System.Web;
using System.Web.Http; //<-- Compiler claims this directive is unneccesary
using System.Web.Http.Description;
using FormsImport.Models;
namespace FormsImport
{
public class CSVmgr
{
public async Task<HttpResponseMessage> UploadCSVFile()
{
try
{
var httpRequest = HttpContext.Current.Request;
foreach (string file in httpRequest.Files)
{
HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created); // <-- the name Request Does not exist in the current context
.
.
.
}
'Request' это свойство на' ApiController'. Где вы ожидаете «CSVmgr», чтобы получить его? – yaakov
Он утверждает, что System.Web.Http не нужен, потому что это так. Вы не используете и не наследуете какой-либо тип, который находится в этом пространстве имен. –
Что заставляет вас думать, что это ошибка? Это приводит к ошибке компилятора любого типа (помимо предупреждения о ненужной директиве 'using')? – CoolBots