Pracuję z kodem Pierwszy EntityFramework (version="6.1.0"
) i EntityFramework.Extended (version = "6.1.0.96, najnowszy build w tej chwili od here.
DbContext
naraża DbSets
, które są dostępne jak:błąd EntityFramework.Extended Future (JIT kompilator ograniczenie wewnętrzne)
var set = ctx.Set<MyEntity>();
Dzisiaj postanowiłem spróbować Future Queries biblioteki EntityFramework.Extended, a zakończył prawie natychmiast, bez pomysłu, jak postępować
0.Oto przykładowy kod:
using (var ctx = new MyDbContext())
{
var u = ctx.Set<User>().Future();
var c = ctx.Set<Country>().Future();
var users = u.ToList();
}
Odnośnie dokumentacji Future()
powinienem dostać tylko jedno zapytanie do DB, który jest co metoda Future()
zapewnia. Zapytanie powinno zostać uruchomione pod numerem u.ToList();
, ale to, co się dzieje, to komunikat o błędzie:
Kompilator JIT napotkał wewnętrzne ograniczenie.
ślad stosu nurkowania mówi mi tak:
na EntityFramework.Future.FutureQueryBase 1.GetResult()
w EntityFramework.Future.FutureQuery 1.GetEnumerator()
w System.Collections.Generic.List 1..ctor (kolekcja IEnumerable 1)
w System.Linq.Enumerable.ToList [TSource] (IEnumerable 1 so urce)
na App.Program.Main (String [] args) w C: \ Users \ ... \ App \ Program.cs: linia 25
ja naprawdę nie wiem, co ja "brakuje mi. Sprawdziłem, czy mój ConnectionString
ma MultipleResultSets
ustawiony na TRUE
.
Testowałem to z wcześniejszymi wersjami kompilacji EF.Exteneded
, ale wystąpił ten sam błąd.
Każdy pomysł bardzo pomoże.
wydaje się być powiązany z http://stackoverflow.com/a/25007352/979477 – draeron
@draeron sprawdził, że nie, ale bez postępów, zrobię to teraz, może po dokonaniu pewnych aktualizacji postępów ... Dziękuję do opinii. –
@ VedranMandić Jestem pewien, że nie masz już tego problemu, ale: Ten błąd zazwyczaj występuje, gdy JIT kompiluje IL, który jest wadliwy w niektórych (złe typy na stosie itp.). Nie jestem zaznajomiony z EntityFramework.Extended, ale spodziewałbym się, że właśnie to robi. –