Είμαι ήδη εργάζονται σε ένα έργο όπου χρειάζεται να εκχύλισμα συνημμένα από μια φόρμα του InfoPath. Υπάρχουν κάποιες καλές πόρων για parsing φόρμες του InfoPath (που είναι απλώς τα αρχεία XML, έτσι είναι πραγματικά αρκετά εύκολο).
Ενώ ήμουν κτίριο μέχρι το έργο, Ξεκίνησα από τη λήψη μια φόρμα του InfoPath και την εξοικονόμηση σε τοπικό σκληρό δίσκο μου. Μου κώδικας c# διάβαζα απευθείας από αυτό το παράδειγμα. Ωστόσο, Οι φόρμες του InfoPath πραγματικά ζουν μέσα σε μια βιβλιοθήκη φορμών του SharePoint. Έκανα μια μικρή αναζήτηση μισή καρδιά για να μάθετε πώς να το διαβάσετε κατευθείαν από τη βιβλιοθήκη και σχεδόν παρατήσει, στην περίπτωση αυτή θα είχα αποθηκεύσει τη φόρμα σε έναν τοπικό κατάλογο temp και διαβάσει από εκεί. Ωστόσο, δεν υπάρχει καμία ανάγκη να πάει μέσα από στεφάνες αυτών, όπως μπορείτε να το διαβάσετε κατευθείαν από τη βιβλιοθήκη. Αυτό το μικρό απόσπασμα δείχνει πώς:
/// Τάξη ορισμός πράγματα εδώ, συμπεριλαμβανομένων των:
ιδιωτική SPFile mySharePointFile; /* Μέρος του ένα SPList */ // Περισσότερο κώδικα πηγαίνει εδώ και μέσα σε μια μέθοδος της τάξης έχουμε: textReader = νέα XmlTextReader(mySharePointFile.OpenBinaryStream()); textReader.WhitespaceHandling = WhitespaceHandling.Κανένας; textReader.Read(); // Αν ο κόμβος έχει αξία ενώ (textReader.Read()) { |
Κλειδώνουν το κομμάτι ανωτέρω είναι ότι μπορούμε να διαβάσουμε το InfoPath απευθείας μέσω του OpenBinaryStream() μέθοδος καλούμε το SPFile ως παράμετρος για τον κατασκευαστή για XmlTextReader. Λειτουργεί μεγάλο.
</Τέλος>
Συνέχεια μου για Twitter σε http://www.twitter.com/pagalvin
Γεια σου,
Χρειάζομαι βοήθεια σε αυτό , Έχω sharepoint 2007 το site και το infopath με έναν επαναλαμβανόμενο πίνακα , Τι πρέπει να κάνω είναι μόλις μορφή είναι αποθηκευμένο στη βιβλιοθήκη sharepoint μορφές πρέπει να βρόχο και να αποθηκεύσετε τα δεδομένα σε μια λίστα χρησιμοποιώντας το πρόγραμμα χειρισμού συμβάντων βιβλιοθήκη μορφή SP.
Οποιαδήποτε βοήθεια εκτιμάται πραγματικά.
Ευχαριστώ