Есть ли способ заставить LINQ-2-SQL компилировать и кэшировать планы для EntityRef .
Из внутреннего профилирования мы видим значительное количество ЦП, используемое для продолжения перекомпиляциипланы.
System.Reflection.Emit.DynamicMethod.CreateDelegate
System.Data.Linq.SqlClient.ObjectReaderCompiler.Compile
System.Data.Linq.SqlClient.SqlProvider.GetReaderFactory
System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Compile
System.Data.Linq.CommonDataServices+DeferredSourceFactory`1.ExecuteKeyQuery
System.Data.Linq.CommonDataServices+DeferredSourceFactory`1.Execute
System.Linq.Enumerable.SingleOrDefault
System.Data.Linq.EntityRef`1.get_Entity
Я бы предпочел использовать сущность ref, но я думаю, что если у нас нет выбора, мы можем написать это.