Ich muss einen einzelnen Wert aus meiner Datenbank auswählen.Wählen Sie einen einzelnen Wert von db
MyController.cs
using (var db = new MainDbContext())
{
var getPhoto = db.Users.Where(u => u.Name == User.Identity.Name).Select(u => u.Photo);
var materializePhoto = getPhoto.ToList();
var photo = materializePhoto[0];
}
ich dieses Zeug, um meinen Wert von IQueryable-String richtig zu konvertieren.
Ich habe gelesen über die Verwendung von 'FirstOrDefault', 'First', 'Default' wählen Sie Optionen (weil sie einen String-Wert, nicht IQerable zurückgeben), aber ich denke, es ist nicht für meinen Fall geeignet.
Die Frage ist: Wie kann ich meinen Code einfacher und kürzer machen?
S.S .: db.Users.Photo enthält URLs.
'var photo = db.Users.Where (u => u.Name == User.Identity.Name) .Select (u => u.Photo) .FirstOrDefault();' –
Oder Sie könnten schreiben noch kürzer : 'var photo = db.Users.FirstOrDefault (u => u.Name == User.Identity.Name) .Wählen Sie (u => u.Photo);' –
@marc_s, ich habe von eifrigem Laden gehört, etw. wie ich Wählen Sie nicht die ganze Tabelle, sondern die erforderliche Zeile auf einmal. Wie es mit Speicher und Verkehr abnimmt. Ist das wahr? Und kann ich das in meinem Code tun? Wo kann ich darüber ausführlich lesen? –