Преобразовать запрос. Создать ответ на .NetCore 3.1 - PullRequest
0 голосов
/ 17 января 2020

Я конвертирую фреймворк webapi net в netcore 3.1. Мне нужно преобразовать этот код

Request.CreateResponse(DataSourceLoader.Load(orders, loadOptions));

В NetCore 3 CreateResponse не является методом запроса. Полный код в конвертации

        [HttpGet]
    public HttpResponseMessage Get(DataSourceLoadOptions loadOptions)
    {
        loadOptions.PrimaryKey = new[] { "OrderID" };

        var orders = from o in _db.Orders
                     select new
                     {
                         o.OrderID,
                         o.CustomerID,
                         CustomerName = o.Customer.ContactName,
                         o.EmployeeID,
                         EmployeeName = o.Employee.FirstName + " " + o.Employee.LastName,
                         o.OrderDate,
                         o.RequiredDate,
                         o.ShippedDate,
                         o.ShipVia,
                         ShipViaName = o.Shipper.CompanyName,
                         o.Freight,
                         o.ShipName,
                         o.ShipAddress,
                         o.ShipCity,
                         o.ShipRegion,
                         o.ShipPostalCode,
                         o.ShipCountry
                     };

        return Request.CreateResponse(DataSourceLoader.Load(orders, loadOptions));
    }

Заранее спасибо за любую помощь.

1 Ответ

0 голосов
/ 17 января 2020

Я предполагаю, что вы хотите вернуть 200 результат с данными:

[HttpGet]
public IActionResult Get(DataSourceLoadOptions loadOptions)
{
    loadOptions.PrimaryKey = new[] { "OrderID" };

    var orders = from o in _db.Orders
        select new
        {
            o.OrderID,
            o.CustomerID,
            CustomerName = o.Customer.ContactName,
            o.EmployeeID,
            EmployeeName = o.Employee.FirstName + " " + o.Employee.LastName,
            o.OrderDate,
            o.RequiredDate,
            o.ShippedDate,
            o.ShipVia,
            ShipViaName = o.Shipper.CompanyName,
            o.Freight,
            o.ShipName,
            o.ShipAddress,
            o.ShipCity,
            o.ShipRegion,
            o.ShipPostalCode,
            o.ShipCountry
        };

    return new OkObjectResult(DataSourceLoader.Load(orders, loadOptions));
}
...