Ναι, απαραίτητα. Το Linq to Sharepoint απλοποιεί αρκετά τα πράγματα αλλά υπάρχουν πάρα μα πάρα πολλές περιπτώσεις όπου πρέπει να δουλέψεις απευθείας με CAML:
- Το CAML είναι απαραίτητο όταν θέλεις να ορίσεις ένα view είτε στο site definition είτε επειδή θέλεις να περιορίσεις τα πεδία που θα επιστρέψει ένα query.
- Είναι απαραίτητο όταν θέλεις να κάνεις ένα cross-site query (query σε όλα τα webs ενός site) ή σέ όλα τα items ενός συγκεκριμένου content type
- Το SPSiteDataQuery είναι ο γρηγορότερος τρόπος να εκτελέσεις ένα query, δίνοντας CAML και επιστρέφοντας ένα DataTable. Και είναι και cross-site
Όπως και με τα διάφορα ORMs, η γνώση της γλώσσας που εκτελείται από κάτω είναι απαραίτητη αν θέλεις να κάνεις πιο προχωρημένα πράγματα ή να έχεις καλύτερες επιδόσεις.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos