मेरी क्वेरी में मुझे IEnumerable
वापस करने की आवश्यकता है, लेकिन मुझे नहीं पता कि यह क्रिया फिर से निष्पादित करने के लिए क्वेरी करती है या नहीं?IQueryable को IEQuery से कनवर्ट करने में क्वेरी को फिर से निष्पादित करता है?
var data = Repository<Person>.Find().AsEnumerable();
Find()
रिटर्न IQueryable
और क्योंकि IQueryable
विरासत IEnumerable
। मुझे संदेह है कि AsEnumerable
दोहराव निष्पादन करें।
मुझे पता है कि var data = Repository<Person>.Find().ToList()
क्वेरी दो बार निष्पादित करता है। Find()
के लिए एक और Tolist()
इसे और अधिक सही बनाने के लिए। IQueryable एक IENumerable नहीं है ... लेकिन यह इसके उत्तराधिकारी है। - http://stackoverflow.com/questions/2433306/whats-the-difference-between-iqueryable-and-ienumerable – Jimmyt1988
@ Jimmyt1988 https://en.wikipedia.org/wiki/Is-a#Examples_of_subtyping –