Наистина не мога да видя какво съм пропуснал тук.
Това е код, който преработвам от GET към POST по искане на другата страна на разработката на проекта.
using VirtualAssistant.Models;
using VirtualAssistant.DataModel;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Data;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Web.Http.Description;
using System.Collections;
namespace LloydsVirtualAssistant.Controllers
{
public class FetchController : ApiController
{
public class PersonList
{
public int ClientID { get; set; }
public int PersonId { get; set; }
public string FullName { get; set; }
public string EmailAddress { get; set; }
public string BusinessNumber { get; set; }
public string MobileNumber { get; set; }
public int LocationId { get; set; }
public int BuidlingId { get; set; }
public string LocationAddress { get; set; }
public string PostCode { get; set; }
public string BranchSortCode { get; set; }
public string AreaName { get; set; }
}
// GET: ChatAi/Person/5
[Route("FetchPerson")]
public HttpResponseMessage POST([FromBody] PersonList PersonId)
{
List<PersonList> results = new List<PersonList>();
var result = new FetchDataContext().usp_FetchPerson_GetById(PersonId).ToList();
foreach (var item in result.ToList())
{
results.Add(new PersonList
{
ClientID = (int)item.ClientID,
PersonId = (int)item.PersonId,
FullName = item.FullName,
EmailAddress = item.EmailAddress,
BusinessNumber = item.BusinessPhone,
MobileNumber = item.MobileNumber,
LocationId = (int)item.LocationId,
BuidlingId = (int)item.BuildingId,
LocationAddress = item.LocationAddress,
PostCode = item.PostCode,
BranchSortCode = item.BranchSortCode,
AreaName = item.AreaName
});
}
{
return results;
}
}
}
}
Грешката гласи
Сериозност
Код Описание Грешка в състояние на потискане на реда на файла на проекта CS1061 „обектът“ не съдържа дефиниция за „ToList“ и нито един метод за разширение „ToList“, приемащ първи аргумент от тип „object“, може да бъде >намерен (пропускате ли директива за използване или справка за асемблиране?)>VirtualAssistant.....
Първоначално това работеше като GET, но екипът иска POST. Опитът ми за рефакторинг се проваля. Разбира се, ще продължа да търся, чудя се дали някой от вас професионалисти може да забележи грешката ми? Това е първият ми уеб API - добре, ако не броите GET, който работеше. Областта ми на експертиза е SQL, просто изучавам ASP.NET (и го харесвам)
Благодаря ви много предварително, че погледнахте.
usp_FetchPerson_GetById(PersonId)
, тъй катоPersonId
е от типPersonList
(вижте входящите си параметри). - person Igor   schedule 06.04.2018new FetchDataContext
е лоша идея, тъй като не изхвърляте контекста на данните. Това означава, че вашите връзки за данни могат да останат отворени, докато контекстът в крайна сметка бъде изхвърлен от събирането на боклук на CLR, което не е детерминистично. - person Igor   schedule 06.04.2018