Ich habe eine Funktion, die EF verwenden, aber es funktioniert zu langsam ... Kennen Sie irgendwelche Möglichkeiten, wie Sie die Leistung dieser Funktion verbessern?Leistung von Entity Framework
public static void SaveCombiners()
{
using (var db = new IP_dbEntities())
{
db.COMBINERs.RemoveRange(db.COMBINERs);
foreach (var type1 in EventTypesList)
{
foreach (var type2 in EventTypesList)
{
db.COMBINERs.Add(new COMBINER()
{
EVENTS_TYPE = db.EVENTS_TYPE.Single(type => type.event_type == type1),
EVENTS_TYPE1 = db.EVENTS_TYPE.Single(type => type.event_type == type2),
combine_status = _eventTypesCombinerCollection[type1][type2].Value == true ? "+" : "-"
});
}
}
db.SaveChanges();
}
}
schreibt es in reiner SQL und verwenden 'db.Database.ExecuteSqlQuery (SQL, params) .ToListAsync();' –
Warum Sie schreiben 2 "Foreach" für 1 Liste? –
Yeah, +1, also, was Sie besser finden können, ist, eine Reihe von Reads zu tun, dann tun Sie Ihre schreibt ... anstatt zu lesen, jedes Mal, wenn Sie einen schreiben !!! –