W Entity Framework 4 napotykam problem, gdy używam funkcji import do procedury składowanej, a następnie jako wartość skalarna. Generuje poniższy kod:Jak radzić sobie z ObjectResult w Entity Framework 4
public virtual ObjectResult<Nullable<int>> GetTopEmployee()
{
return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<Nullable<int>("GetTopEmployee");
}
Jak korzystać z wartości zwracanej tej metody?
Na przykład, ten kod działa poprawnie:
NorthwindEntities db = new NorthwindEntities();
var i = db.GetTopEmployee();
Ale chcę użyć wartości zwracane tylko jako int. Jeśli użyję zwracanej wartości jako non while w funkcji import, to daje -1 jako wynik.
Kiedy próbuję poniższy kod:
NorthwindEntities db2 = new NorthwindEntities();
int j = db.GetTopEmployee();
zgłasza błąd mówiąc:
nie można niejawnie przekonwertować typu 'System.Data.Objects.ObjectResult' do 'int'
Jak przeanalizować powyższe?
Co to jest kod, który daje "-1" jako wynik? Nie rozumiem "zwracanej wartości jako non while in function import". –
Mam na myśli to, czy dostroję moją procedurę przechowywaną poprzez import funkcji, a następnie oznaczy wartość zwracaną jako brak, to da mi -1 jako wynik – user1037747