In einem WebAPI-Projekt habe ich einen Controller, der den Status eines Produkts basierend auf einem vom Benutzer eingegebenen Wert überprüft.JSON-Antwort im Web-API-Controller erstellen
Nehmen wir an, sie geben "123" und die Antwort sollte "Status" sein: 1, und eine Liste von Produkten. Wenn sie "321" eingeben, lautet der "Status" 0 und eine Liste von Produkten.
Meine Frage ist, wie ich eine solche Zeichenfolge in einem WebAPI-Controller korrekt erstellen.
[Route("{value:int}")]
public string GetProducts(int value)
{
var json = "";
var products = db.Products;
if (products.Any())
{
foreach (var s in products)
{
ProductApi product = new ProductApi();
product.Name = s.Name;
json += JsonConvert.SerializeObject(supplier);
}
}
var status = db.Status;
if (status.Any())
{
json += "{status:1}";
}
else
{
json += "{status:0}";
}
return json;
}
public class ProductApi
{
public string Name { get; set; }
}
Wird diese Ausgabe/Antwort auch als gültig betrachtet?
[
{
"id":1,
"name":"product name"
},
{
"id":2,
"name":"product name 2"
},
{
"id":3,
"name":"product name 3"
}
]
{
"status": 0
}
Sie sollten json nicht selbst erstellen. Sie können ein Objekt von dieser Methode zurückgeben und JSON als Standardformat für zurückgegebene Daten festlegen. –
Können Sie anhand des obigen Codes ein Beispiel erstellen? – brother