Συμπτώματα
Εξετάστε το ακόλουθο σενάριο:
- Ο υπολογιστής σας εκτελεί Windows 7 ή Windows Server 2008 R2.
- Ο υπολογιστής εκτελεί την υπηρεσία Windows Communication Foundation (WCF) και η υπηρεσία φιλοξενείται στις υπηρεσίες Internet Information Services (IIS). Η υπηρεσία χρησιμοποιεί το πρωτόκολλο HTTP ή HTTPS και χρησιμοποιεί τον έλεγχο ταυτότητας των Windows.
- Μπορείτε να εγκαταστήσετε ορισμένες ενημερωμένες εκδόσεις του Microsoft .NET Framework 3.0 Service Pack 2 ή .NET Framework 3.5 Service Pack 1 για WCF. Για παράδειγμα, μπορείτε να εγκαταστήσετε την ενημερωμένη έκδοση ασφαλείας 2756920.
Σε αυτό το σενάριο, ενδέχεται να λάβετε ένα μήνυμα σφάλματος εξαίρεσης που μοιάζει με το ακόλουθο στη σελίδα που ζητήθηκε:
Σημείωση
Σφάλμα διακομιστή στην εφαρμογή '/SecurtyTokenServiceApplication'
Η μέθοδος δεν βρέθηκε: 'System.String
System.ServiceModel.Ativation.iis7helper.extendedprotectiondotlessspnnotenabledthrower(system.object)'
Για παράδειγμα, ενδέχεται να λάβετε το μήνυμα λάθους όταν μεταβείτε σε μια τοποθεσία Web του Microsoft SharePoint 2010.
Όταν παρουσιαστεί αυτό το ζήτημα, ενδέχεται επίσης να λάβετε το ακόλουθο μήνυμα λάθους στο αρχείο καταγραφής συμβάντων στο διακομιστή:
Σημείωση
Το WebHost απέτυχε να επεξεργαστεί ένα αίτημα.
Πληροφορίες αποστολέα: System.ServiceModel.ServiceHostingEnvironment+HostingManager/17653682
Εξαίρεση: System.ServiceModel.ServiceActivationException: Η υπηρεσία '/SecurityTokenServiceApplication/securitytoken.svc' δεν μπορεί να ενεργοποιηθεί εξαιτίας μιας εξαίρεσης κατά τη μεταγλώττιση.
Το μήνυμα εξαίρεσης είναι: Η μέθοδος δεν βρέθηκε: 'System.String System.ServiceModel.Activation.Iis7Helper.ExtendedProtectionDotlessSpnNotEnabledThrowHelper(System.Object)'.. --->
System.MissingMethodException: Η μέθοδος δεν βρέθηκε: 'System.String System.ServiceModel.Activation.Iis7Helper.ExtendedProtectionDotlessSpnNotEnabledThrowHelper (System.Object)'.
στο System.ServiceModel.WasHosting.MetabaseSettingsIis7V2.WebConfigurationManagerWrapper.BuildExtendedProtectionPolicy (ExtendedProtectionTokenChecking tokenChecking, σημαίες ExtendedProtectionFlags, List'1 spnList)
στο System.ServiceModel.WasHosting.MetabaseSettingsIis7V2.WebConfigurationManagerWrapper.GetExtendedProtectionPolicy (στοιχείο ConfigurationElement)
στο System.ServiceModel.WasHosting.MetabaseSettingsIis7V2.ProcessWindowsAuthentication(όνομα τοποθεσίας συμβολοσειράς, συμβολοσειρά virtualPath, HostedServiceTransportSettings& transportSettings)
Αιτία
Αυτό το ζήτημα παρουσιάζεται επειδή ο υπολογιστής ενδέχεται να έχει εγκατεστημένες ορισμένες επείγουσες επιδιορθώσεις που περιείχαν μόνο System.ServiceModel.dll και όχι System.ServiceModel.WasHosting.dll. Ανατρέξτε στην ενότητα "Περισσότερες πληροφορίες" για μια λίστα επειγουσών επιδιορθώσεων που είναι γνωστό ότι περιέχουν μόνο αυτά τα αρχεία.
Εξαιτίας αυτού του προβλήματος, η νεότερη ενημερωμένη έκδοση δεν μπορεί να εγκαταστήσει την ίδια έκδοση και των δύο αρχείων. Αυτό εκθέτει μια εξάρτηση μεταξύ των δύο αρχείων. Αυτό με τη σειρά του προκαλεί την προαναφερθείσα εξαίρεση. Αυτό το ζήτημα παρουσιάζεται εξαιτίας ενός ζητήματος σε επείγουσες επιδιορθώσεις που κυκλοφόρησαν προηγουμένως και δεν προκαλείται ειδικά από τη νέα ενημερωμένη έκδοση. Η νέα ενημέρωση απλώς προκαλεί την εμφάνιση του προβλήματος.
Επίλυση
Για να επιλύσετε αυτό το πρόβλημα, βεβαιωθείτε ότι οι εκδόσεις του System.ServiceModel.dll και του System.ServiceModel.WasHosting.dll είναι συγχρονισμένες.
Για να επιλύσετε αυτό το πρόβλημα, εγκαταστήστε την ενημέρωση [2637518](/kb/2637518semblies.
Συνιστούμε να εγκαταστήσετε την ενημερωμένη έκδοση [2637518](/kb/2637518o διορθώστε μόνο το ζήτημα που περιγράφεται σε αυτό το άρθρο. Εφαρμόστε αυτήν την επείγουσα επιδιόρθωση μόνο σε συστήματα που αντιμετωπίζουν αυτό το συγκεκριμένο ζήτημα.
Για να κάνετε λήψη αυτής της επείγουσας επιδιόρθωσης από το Κέντρο λήψης της Microsoft, μεταβείτε στην ακόλουθη ιστοσελίδα του Κέντρου λήψης της Microsoft:
http://go.microsoft.com/fwlink/?LinkID=242859 Σημείωση Αν αντιμετωπίζετε ήδη αυτό το πρόβλημα, εγκαταστήστε την ενημέρωση [2637518](/kb/2637518issue στο surface.
Απαίτηση επανεκκίνησης
Ίσως χρειαστεί να επανεκκινήσετε τον υπολογιστή μετά την εφαρμογή αυτής της ενημέρωσης.
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα που αφορά τα προϊόντα της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".
Περισσότερες πληροφορίες
Οι ακόλουθες επείγουσες επιδιορθώσεις μπορεί να προκαλέσουν αυτό το ζήτημα, εάν είναι εγκατεστημένες σε υπολογιστή που εκτελεί Windows 7 ή Windows Server 2008 R2 RTM και εάν δεν έχουν εγκατασταθεί νέες ενημερωμένες εκδόσεις του .NET Framework 3.5 SP1 για WCF. Για περισσότερες πληροφορίες, κάντε κλικ στους αριθμούς των άρθρων παρακάτω, για να προβάλετε τα άρθρα της Γνωσιακής Βάσης της Microsoft:
976462 Μια επείγουσα επιδιόρθωση για το the.NET Framework 3.5 Service Pack 1 είναι διαθέσιμη για τα Windows 7 και Windows Server 2008 R2 ως προαπαιτούμενο για τον Microsoft Office SharePoint Server 2010
977420 Μια συλλογή επειγουσών επιδιορθώσεων είναι διαθέσιμη για την επιδιόρθωση προβλημάτων στο Windows Communication Foundation στο .NET Framework 3.5 SP1 για Windows 7 και Windows Server 2008 R2
982867 WCF υπηρεσίες που φιλοξενούνται από υπολογιστές μαζί με NLB αποτύχει στο .NET Framework 3.5 SP1 ή στο .NET Framework 4