Neu in der MVC.net Szene (und .net für diese Angelegenheit), aber scheint, dass ich eine breite Palette von Optionen finden, wenn eine „Liste“ mit Daten füllen will. In meinem Fall möchte ich im Moment eine Liste aus einer ausgewählten Abfrage von Elementen auffüllen und die Ergebnisse in JSON zur Ausgabe rendern, also bitte mit mir ...IEnumerable <T> VS IList <T> VS IQueryable <T>
Also meine Viewmodel-Klasse ist so etwas wie die Ausgabe in meine Liste
List<TFSquery> z = (from msg in _DB.Msg
select new { msg.MsgUID, msg.CreateStamp }).ToList();
dann würde ich Schleife so dass ich dann Ausgabe in meiner Json Rückkehr string::
[Serializable()]
public class TFSquery
{
public int MsgUid { get; set; }
public DateTime CreateStamp { get; set; }
}
Und dann würde ich es mit meiner Anfrage Ausgabe füllen möge? Und wenn ich eine LISTE VS IENUMERABLE VS IQUERRYABLE ??
return Json(new { Result = z }, JsonRequestBehavior.AllowGet);
Eigentlich sollte, wenn möglich, das 'var' Schlüsselwort in diesem Fall verwendet werden, dann müssen Sie sich nicht darum sorgen, den Typ irgendwo zu übertragen. Ändere es einfach in 'var z = ...' ohne die 'ToList()' am Ende. Dies wird wahrscheinlich "IQueryable" behalten, aber trotzdem von IEnumerable erbt. – Jess
ICollection von T beim Hinzufügen/Entfernen, IList von T (oder T []) beim Indizieren ist ebenfalls erforderlich. Die meisten Dinge kommen mit nur IEnumerable von T, und das ist großartig, in öffentlichen Schnittstellen zu entlarven. Ich benutze List selten mehr. – CRice