У меня следующая ситуация:
В моем приложении WP7 есть экран входа в систему, на котором выполняются следующие строки кода:
var userQuery = DataAccessManager.Instance.Database.Select<LocalUser>(u => _userLogin.Equals(u.Login)); //_userLogin and Login property are strings
var lstUser = userQuery.ToList();
В некоторых ситуациях мне нужно вызватьснова экран входа в систему, где он выполняет тот же метод с теми же строками кода выше.Но во второй раз я получаю следующую ошибку при вызове
var lstUser = userQuery.ToList();
Mobiltec.Atheneum.Common.Utils.Synchronization.AuthHandler + <> c__DisplayClass2. userLogin в System.Reflection.RuntimeFieldInfo.GetValue(Объект obj) в System.Linq.jvm.ExpressionInterpreter.b _0 (поле FieldInfo) в System.Linq.jvm.Extensions.OnFieldOrProperty (SelfInfo, действие 1 onfield, Action
1 onprop) в System.Linq.jvm.ExpressionInterpreter.VisitMemberInfo (MemberInfo mi) в System.Linq.jvm.ExpressionInterpreter.VisitMemberAccess (член MemberExpression) в System.Linq.jvm.ExpressionVisitor.Visit (выражение для выражения) в выражении System.Linq.jvm.Expall для выражений (выражение для выражения).System.Linq.jvm.ExpressionVisitor.Visit (Выражение выражения) в System.Linq.jvm.ExpressionInterpreter.Interpret (аргументы LambdaExpression lambda, Object []) в System.Linq.jvm.Interpreter.Run (Object [] arg) в системе.Linq.jvm.Interpreter.FuncRunner [T, TResult] (аргумент LocalUser) в Perst.Database.LinqПеречислитель 1.MoveNext()
at System.Collections.Generic.List
1..ctor (источник IEnumerable 1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable
1) в Mobiltec.Atheneum.Common.Utils.Synchronization.AuthHandler.Authenticate (String _userLogin, String _password, String deviceNickname) в Mobiltec.Atheneum.Reader.WindowsPhone.Controls.LoginControl. <> C _DisplayClass4.b__0 (состояние объекта) в System.Threading.ThreadPool.WorkItem.doWork (объект o) в System.Threading.Timer.ring ()
любойИдея об этом?У нас один и тот же класс в приложении Silverlight to Desktop, и я не знаю, почему это происходит с WP7.
PS1: Проблема не возникает только с классом LocalUser ...это с любым классом.
PS2: Если я использую это:
var userQuery = DataAccessManager.Instance.Database.Select<LocalUser>(u => "cesarautor@atheneum.com".Equals(u.Login)); //as sample...any dumb string works
вместо
var userQuery = DataAccessManager.Instance.Database.Select<LocalUser>(u => _userLogin.Equals(u.Login));
это работает ...
Заранее спасибо