Οι σελίδες ASP.NET εμφανίζουν ασυνήθιστη συμπεριφορά επειδή δεν γίνεται επεξεργασία του κώδικα διακομιστή

Συμπτώματα

Συμπτώματα που είναι παρουσίασε κατά το χρόνο εκτέλεσης

Όταν προβάλλετε μια σελίδα .aspx με μια εφαρμογή Web του Microsoft ASP.NET, ενδέχεται να αντιμετωπίσετε τα ακόλουθα συμπτώματα:
  • Μια κενή σελίδα ενδέχεται να εμφανίζεται στο πρόγραμμα περιήγησης.
  • Ενδέχεται να λάβετε μια οδηγία προς λήψη στη σελίδα .aspx.
Η τυπική συμπεριφορά είναι ότι γίνεται επεξεργασία του κώδικα διακομιστή για τη σελίδα .aspx και, στη συνέχεια, ο κώδικας δεν αποστέλλονται στο πρόγραμμα περιήγησης Web στην πρωτογενή μορφή.

Συμπτώματα που είναι παρουσίασε κατά τη χρήση του Visual Studio .NET για τον εντοπισμό σφαλμάτων του ASP.NET

Όταν εφαρμόζετε εντοπισμό σφαλμάτων σε μια εφαρμογή ASP.NET στο Microsoft Visual Studio .NET, ενδέχεται να λαμβάνετε το ακόλουθο μήνυμα λάθους στο IDE:
Παρουσιάστηκε σφάλμα κατά την προσπάθεια εκτέλεσης του έργου: δεν είναι δυνατή η εκκίνηση του εντοπισμού σφαλμάτων στο διακομιστή Web. Ο διακομιστής δεν υποστηρίζει εντοπισμό σφαλμάτων σε εφαρμογές ASP.NET ή ATL διακομιστή. Εκτελέστε το πρόγραμμα εγκατάστασης για να εγκαταστήσετε τα στοιχεία διακομιστή του Visual Studio .NET. Εάν το πρόγραμμα εγκατάστασης έχει εκτελεστεί, βεβαιωθείτε ότι έχει καθοριστεί μια έγκυρη διεύθυνση URL.


Μπορείτε επίσης να αναφερθείτε στο θέμα ASP.NET και ATL διακομιστή εντοπισμού σφαλμάτων στην ηλεκτρονική τεκμηρίωση των. Θέλετε να απενεργοποιήσετε τις μελλοντικές προσπάθειες εντοπισμού σφαλμάτων σε σελίδες ASP.NET για αυτό το έργο;

Αιτία

Μετά την εγκατάσταση του Microsoft .NET Framework Software Development Kit (SDK) ή το Microsoft Visual Studio .NET, δημιουργούνται αντιστοιχίσεις Microsoft Internet Information Services (IIS) για να συσχετίσετε νέες επεκτάσεις ονόματος αρχείου και νέες ρυθμίσεις για το ASP.NET.

Οι νέες ρυθμίσεις δεν είναι σε θέση εάν ισχύει ένα από τα παρακάτω προτάσεις για την περίπτωσή σας:
  • Δεν έχει εγκατασταθεί IIS, όταν εκτελέσατε το .NET Framework SDK ή Visual Studio .NET το πρόγραμμα εγκατάστασης.
  • Καταργήσατε και επανεγκαταστήσατε το IIS, στη συνέχεια, αφού εκτελέσατε την εγκατάσταση SDK του .NET Framework ή το Visual Studio .NET το πρόγραμμα εγκατάστασης.

Προτεινόμενη αντιμετώπιση

Για να επιλύσετε αυτό το ζήτημα, μπορείτε να επιδιορθώσετε τις αντιστοιχίσεις υπηρεσιών IIS ώστε κανονικά συσχετίζονται οι επεκτάσεις ονόματος αρχείου για το ASP.NET. Υπάρχουν δύο τρόποι για να επιδιορθώσετε τις αντιστοιχίσεις υπηρεσιών IIS για το ASP.NET.

Για να επιδιορθώσετε τις αντιστοιχίσεις υπηρεσιών IIS για το ASP.NET, εκτελέστε το utlity Aspnet_regiis.exe. Για να γίνει αυτό, ακολουθήστε τα εξής βήματα:
  1. Κάντε κλικ στο κουμπί Έναρξη και, στη συνέχεια, κάντε κλικ στην επιλογή Εκτέλεση.
  2. Πληκτρολογήστε cmdκαι στη συνέχεια κάντε κλικ στο κουμπί OK.
  3. Στη γραμμή εντολών, πληκτρολογήστε την ακόλουθη εντολή και, στη συνέχεια, πιέστε το πλήκτρο ENTER:
    "\WindowsFolder\Microsoft.NET\Framework\VersionNumber> \aspnet_regiis.exe" -i
    Σημείωση Αντικατάσταση
    WindowsFolder με το όνομα του καταλόγου όπου είναι εγκατεστημένο το λειτουργικό σύστημα. Αντικαταστήστε το VersionNumber με την έκδοση του .NET Framework εγκατεστημένη στον υπολογιστή σας.
Για να επιδιορθώσετε τις αντιστοιχίσεις υπηρεσιών IIS για το ASP.NET, πρέπει να καταχωρήσετε Aspnet_isapi.dll. Για να γίνει αυτό, ακολουθήστε τα εξής βήματα:
  1. Κάντε κλικ στο κουμπί Έναρξη και, στη συνέχεια, κάντε κλικ στην επιλογή Εκτέλεση.
  2. Πληκτρολογήστε regsvr32 WindowsFolder\Microsoft.NET\Framework\VersionNumber\aspnet_isapi.dllκαι, στη συνέχεια, κάντε κλικ στο κουμπί OK. Regsvr32 επιστρέφει τα αποτελέσματα της καταχώρησης.

Κατάσταση

Αυτή η συμπεριφορά οφείλεται στη σχεδίαση.

Περισσότερες πληροφορίες

Βήματα για την αναπαραγωγή της συμπεριφοράς

Ακολουθήστε τα παρακάτω βήματα για να επαληθεύσετε αν μπορείτε να δείτε το ζήτημα που περιγράφεται σε αυτό το άρθρο. Η δοκιμή αυτή ελέγχει τα τυπικά συμπτώματα που σχετίζονται με το θέμα. Εάν είστε ήδη εξοικειωμένοι με το πώς λειτουργούν οι αντιστοιχίσεις εφαρμογής των υπηρεσιών IIS, μπορείτε επίσης να ακολουθήσετε τα βήματα στην ενότητα "Πώς να επαληθεύσετε σας IIS αντιστοιχίσεων εφαρμογής" αυτού του άρθρου για να επιβεβαιώσετε τη ρύθμιση παραμέτρων του διακομιστή Web.
  1. Για να δημιουργήσετε μια εφαρμογή Web του ASP.NET, χρησιμοποιήστε το Visual Studio .NET. Για να γίνει αυτό, ακολουθήστε τα εξής βήματα:
    1. Ξεκινήστε το Microsoft Visual Studio .NET.
    2. Στο μενού αρχείο , επιλέξτε Δημιουργίακαι, στη συνέχεια, κάντε κλικ στο έργο.
    3. Στο πλαίσιο διαλόγου " Νέο έργο ", κάντε κλικ στο κουμπί Visual C# έργα ή Έργα της Visual Basic στην περιοχή Τύποι έργουκαι, στη συνέχεια, κάντε κλικ στην Εφαρμογή Web του ASP.NET στην περιοχή πρότυπα.
    4. Στο πλαίσιο θέση , αντικαταστήστε το προεπιλεγμένο όνομα εφαρμογή Web# με MyWebApp. Εάν χρησιμοποιείτε τον τοπικό διακομιστή, μπορείτε να αφήσετε το όνομα του διακομιστή ως http://localhost. Πλαίσιο θέση που προκύπτει εμφανίζεται ως εξής:
      http://localhost/MyWebApp
  2. Στην Εξερεύνηση λύσεων, κάντε δεξιό κλικ στον κόμβο του έργου, μεταβείτε στην επιλογή
    Προσθήκη, και στη συνέχεια κάντε κλικ στο κουμπί Προσθήκη φόρμας Web. Ονομάστε τη φόρμα Web MappingsTest.aspxκαι, στη συνέχεια, κάντε κλικ στο κουμπί Άνοιγμα.
  3. Κάντε δεξιό κλικ στη σελίδα .aspx με το πρόγραμμα επεξεργασίας και, στη συνέχεια, κάντε κλικ στο κουμπί Προβολή κώδικα. Προσθέστε τον ακόλουθο κώδικα στο πρόγραμμα χειρισμού συμβάντων Page_Load :

    Visual C# .NET
    private void Page_Load(object sender, System.EventArgs e){
    Response.Write("This code was executed");
    }

    Visual Basic .NET
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load    Response.Write("This code was executed")
    End Sub

  4. Στο μενού αρχείο , κάντε κλικ στο κουμπί Αποθήκευση όλων για να αποθηκεύσετε τη φόρμα Web και άλλα αρχεία συσχετισμένο έργο.
  5. Από το μενού Δημιουργία στο Visual Studio .NET IDE, κάντε κλικ στο κουμπί Δημιουργία λύσης.
  6. Κάντε δεξιό κλικ στη σελίδα .aspx, και στη συνέχεια κάντε κλικ στο κουμπί Προβολή σε πρόγραμμα περιήγησης.
  7. Εάν οι αντιστοιχίσεις είναι σωστές, εμφανίζεται το μήνυμα "εκτελέστηκε αυτόν τον κωδικό" στο πρόγραμμα περιήγησης. Εάν δεν είναι σωστά τις αντιστοιχίσεις, παρουσιάζεται μία από τις ακόλουθες συμπεριφορές:
    • Εμφανίζεται μια κενή σελίδα στο πρόγραμμα περιήγησης.
    • Θα εμφανιστεί μια ερώτηση για λήψη στη σελίδα .aspx.
    Αυτή η συμπεριφορά παρουσιάζεται επειδή κώδικα διακομιστή είναι η επεξεργασία ή δεν εκτελείται με τον αναμενόμενο τρόπο. Και στις δύο περιπτώσεις, λαμβάνετε τα μη μεταποιημένα πηγαίο κώδικα. Για το σενάριο κενή σελίδα, αν κάνετε δεξιό κλικ στη σελίδα στο πρόγραμμα περιήγησης και, στη συνέχεια, κάντε κλικ στην επιλογή Προβολή προέλευσης, παρατηρείτε ότι ο κώδικας διακομιστή εμφανίζεται στο μη επεξεργασμένα. Για παράδειγμα, σε μια Visual C# ASP.NET Web φόρμα, οδηγία @ Page εμφανίζεται παρόμοιο με το ακόλουθο:
    <%@ Page language="c#" Codebehind="MappingsTest.aspx.cs" AutoEventWireup="false" Inherits="MyWebApp.MappingsTest" %>

Πώς μπορείτε να επαληθεύσετε τις αντιστοιχίσεις εφαρμογής των υπηρεσιών IIS σας

Για να βεβαιωθείτε ότι είναι σωστά τις αντιστοιχίσεις εφαρμογής, ακολουθήστε τα εξής βήματα:
  1. Κάντε κλικ στο κουμπί Έναρξη, επιλέξτε την εντολή προγράμματα, εργαλεία Διαχείρισηςκαι, στη συνέχεια, κάντε κλικ στην επιλογή Διαχείριση υπηρεσιών Internet.
  2. Αναπτύξτε τον κόμβο που αντιστοιχεί στον τοπικό κεντρικό υπολογιστή (όνομα υπολογιστή) και, στη συνέχεια, αναπτύξτε τον κόμβο Default Web Site .
  3. Κάντε δεξιό κλικ στον κατάλογο εφαρμογών Web και, στη συνέχεια, κάντε κλικ στο κουμπί Ιδιότητες.
  4. Στην καρτέλα " Κατάλογος ", στην περιοχή Ρυθμίσεις εφαρμογής, κάντε κλικ στο κουμπί Ρύθμιση παραμέτρων.
  5. Κάντε κλικ στην καρτέλα Αντιστοιχίσεις εφαρμογής .
  6. Στην καρτέλα " Αντιστοιχίσεις εφαρμογής ", στην ενότητα Αντιστοιχίσεων εφαρμογής, ελέγξτε αν η επέκταση .aspx αντιστοιχίζεται στον παρακάτω DLL:
    C:\WindowsFolder\Microsoft.Net\Framework\VersionNumber\aspnet_isapi.dll
    Σημείωση
    Αντικαταστήστε το WindowsFolder με το όνομα του καταλόγου όπου είναι εγκατεστημένο το λειτουργικό σύστημα. Αντικαταστήστε το VersionNumber με την έκδοση του .NET Framework που είναι εγκατεστημένη στον υπολογιστή σας.
  7. Εάν δεν μπορείτε να βρείτε την καταχώρηση αντιστοίχισης εφαρμογών, ακολουθήστε τα βήματα στην ενότητα "Προτεινόμενη αντιμετώπιση" αυτού του άρθρου.

Αναφορές

Η ανάλυση για να επιδιορθώσετε τις αντιστοιχίσεις υπηρεσιών IIS για το ASP.NET προκύπτει από το άρθρο της Γνωσιακής βάσης Q306005.
Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

306005 τον τρόπο επιδιόρθωσης της αντιστοίχισης των υπηρεσιών IIS μετά την κατάργηση και επανεγκατάσταση των υπηρεσιών IIS

Το ακόλουθο άρθρο παρέχει περισσότερες λεπτομερείς πληροφορίες σχετικά με το σενάριο εντοπισμού σφαλμάτων που περιγράφονται παραπάνω σε αυτό το έγγραφο:

318465 δεν είναι δυνατό να εντοπισμός σφαλμάτων εφαρμογής ASP.NET Web

Ιδιότητες

Αναγνωριστικό άρθρου: 325093 - Τελευταία αναθεώρηση: 17 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια