Привет - простой запрос:
var q = (from SomeObject o in container
where
o.SomeInt > 8
&& o.SomeString != null //Null Ref here
select o;
Я всегда получаю исключение нулевой ссылки.
Если я использую String.IsNullOrEmpty (o.SomeString), запрос выполняется примерно в 100 раз дольше, как если бы я использовал && o.SomeString! = "" (Что намного быстрее, но, очевидно, не правильно).
Я предполагаю, что DB4o должен активировать объекты, чтобы передать их в вызов IsNullOrEmpty, и не может использовать индексы.
Мой вопрос: как лучше проверить наличие нулей в этой ситуации? Есть что-то вроде: mystring! = Db4o.DBNull.Value или что-то еще?
Cheers,
Dave