You can try setting the ObjectTrackingEnabled of the context to false. This helped me in this same situation but I later turn it on while updating and inserting records.
DBDataContext.ObjectTrackingEnabled = false; // Read Only
You can try setting the ObjectTrackingEnabled of the context to false. This helped me in this same situation but I later turn it on while updating and inserting records.
DBDataContext.ObjectTrackingEnabled = false; // Read Only
It is a bug and it will not be fixed.
Similar problem was described in the post from link below. I tried not to use PK in compiled query as suggested but got the same problem. So there is an issue with compiled queries bypassing the cache.
LINQ to SQL CompiledQuery is good option, but thing that needs to be taken into consideration while using the same is that first time when it is called it takes more time than a routine query would take. Refer to below link...
http://www.a2zmenu.com/LINQ/LINQ%20to%20SQL%20CompiledQuery.aspx