Мы обнаружили, что Linq для CRM 2011 ужасно неисправен — кажется, что он вошел в систему без какого-либо контроля качества. Показателем того, насколько сильно сломан провайдер, является запрос типа .Where(x => x== "b"), который работает, но этот .Where(x => "b" == x) может не зависеть от какого-либо предшествующего условия, такого как заявление о присоединении. На самом деле мне пришлось переписать части поставщика запросов, и мне больше повезло с тем дерьмом, которое я собрал.
Однако так продолжаться не может, есть еще другие проблемы, и мне не платят за работу в MS, поэтому я ищу альтернативы. Эти 2 пришли к QueryExpression и FetchXml, как подробно описано здесь: http://msdn.microsoft.com/en-us/library/gg334607.aspx
Может ли кто-нибудь дать мне честные, реальные плюсы и минусы использования QueryExpression по сравнению с FetchXml? Я хотел бы знать, как они сравниваются с точки зрения производительности, скорости разработки, надежности и гибкости.