Bir WCF Veri Hizmeti geliştiriyorum. İstemci tarafına erişmeyi denediğimde, bu özel durumu alırım:ObjectContext örneği atılmıştır ve artık bir bağlantı gerektiren işlemler için kullanılamaz
ObjectContext örneği atılmıştır ve artık bir bağlantı gerektiren işlemler için kullanılamaz.
Kodu:
[WebGet]
public IQueryable<Student> GetUsersByClassId(string classId)
{
Check.Argument.IsNotEmptyOrNull(classId, "classId");
using (var db = new schoolContext(connectionString))
{
((IObjectContextAdapter)db).ObjectContext.ContextOptions.ProxyCreationEnabled = false;
((IObjectContextAdapter)db).ObjectContext.ContextOptions.LazyLoadingEnabled = false;
var studentQry = from s in db.Student.Include("Class")
where s.Class.Id == classId
select s;
if(studentQry == null)
return new List<Student>().AsQueryable();
else
return studentQry;
}
Geri dönmeden önce IQueryable değerini değerlendirmeli, IEnumerable veya benzeri bir hale dönüştürmeli, temelde tembel bir koleksiyona dönüyorsunuz ve Kimsenin veriyi yakalama şansı bulamadı. –