Итак, я пишу код Asp.Net WebApi, чтобы использовать старый код C#, где нет класса модели. (Чистая dataTable, возвращаемая с DataAccess, Crazy правильно? Я знаю)Как вернуть один объект DataRow из Asp Web API?
Ниже приведен код, который я поставил на стороне сервера.
public IHttpActionResult GetProduct(int campaignID, int productID)
{
var so = new SearchOptions(campaignID)
{
ProductID = productID
};
var result = SearchManager.Search(so);
if (result == null || result.Rows.Count == 0)
return NotFound();
return Ok(result.Rows[0]);
}
Я ожидаю, чтобы иметь ответ, как это:
{
Field1: "field1",
Field2: "field2",
...
}
Но на самом деле я с этим:
{
"rowError": "",
"rowState": 2,
"table": [
{
Field1 : "field1",
Field2 : "field2",
...
}
],
"itemArray": ["field1","field2"],
"hasErrors": false
}
Я не хочу, чтобы все эти rowError
, rowState
.. .etc
Если я делаю это на стороне сервера:
public IHttpActionResult GetProduct(int campaignID, int productID)
{
var so = new SearchOptions(campaignID)
{
ProductID = productID
};
var result = SearchManager.Search(so);
if (result == null || result.Rows.Count == 0)
return NotFound();
return Ok(result);
}
Я получаю это:
[{Field1: "field1", Field2: "field2"..}]
, который, к сожалению, отвергнут ngResource
методом GET, поскольку она представляет собой массив, а не один Json Object.
Что мне делать? Если я просто хочу вернуть один dataRow как строку Json.
В идеале я хочу избегать перехода к пути создания объекта ответа, как это предлагает Маноз. (Спасибо за ваш ответ Manoz хотя)
Благодаря
Работает как шарм. Благодаря! – TypingPanda
@TypingPanda Добро пожаловать! – feeeper