asp.net mvc - "आपके अनुरोध को संसाधित करते समय एक अपवाद हुआ। इसके अतिरिक्त, कस्टम त्रुटि पृष्ठ निष्पादित करते समय एक और अपवाद हुआ... "




asp.net-mvc asp.net-mvc-4 (3)

मुझे केवल यह समस्या थी कि redirectMode="ResponseRewrite" ( redirectMode="ResponseRedirect" ठीक काम करता है) और उपरोक्त समाधानों में से कोई भी इस मुद्दे को हल करने में मेरी सहायता नहीं करता है। हालांकि, एक बार जब मैंने "क्लासिक" से "एकीकृत" से सर्वर के एप्लिकेशन पूल के "प्रबंधित पाइपलाइन मोड" को बदल दिया तो कस्टम त्रुटि पृष्ठ अपेक्षित दिखाई दिया।

मैं एक एमवीसी वेबसाइट को एक Azure webrole के रूप में प्रकाशित करने की कोशिश कर रहा हूं।

जब मैं इसे स्थानीय रूप से चलाता हूं, तो सब कुछ ठीक काम करता है।

लेकिन एक बार जब मैं इसे Azure पर प्रकाशित करता हूं और कुछ एमवीसी कार्रवाई में सर्फ करता हूं, तो मुझे यह त्रुटि मिलती है:

/ 'अनुप्रयोग में सर्वर त्रुटि

रनटाइम त्रुटि

विवरण: आपके अनुरोध को संसाधित करते समय एक अपवाद हुआ। इसके अतिरिक्त, पहले अपवाद के लिए कस्टम त्रुटि पृष्ठ निष्पादित करते समय एक और अपवाद हुआ। अनुरोध समाप्त कर दिया गया है।

मुझे समझ में नहीं आता कि त्रुटि हैंडलर को अपवाद का सामना कैसे किया जा सकता है, क्योंकि त्रुटियों को डिफ़ॉल्ट तरीके से प्रबंधित किया जाता है:

public class FilterConfig
{
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new HandleErrorAttribute());
    }
}

यह मेरा web.config है:

<?xml version="1.0"?>

<configuration>
  <configSections>
    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
      <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
      <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    </sectionGroup>
  </configSections>

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>

  <appSettings>
    <add key="webpages:Enabled" value="false" />
  </appSettings>

  <system.web>
        <httpHandlers>
      <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
    </httpHandlers>

    <pages
        validateRequest="false"
        pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
        pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
        userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
      <controls>
        <add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
      </controls>
    </pages>
  </system.web>

  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />

    <handlers>
      <remove name="BlockViewHandler"/>
      <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
    </handlers>
  </system.webServer>
</configuration>

यह Error.cshtml है:

@model System.Web.Mvc.HandleErrorInfo

@{
    ViewBag.Title = "Error";
}

<h2>
    Sorry, an error occurred while processing your request.
</h2>

इस अपवाद का कारण क्या हो सकता है, और मैं इसे स्थानीय रूप से पुन: उत्पन्न क्यों नहीं कर सकता?


मैं Azure का उपयोग नहीं कर रहा था, लेकिन मुझे स्थानीय रूप से एक ही त्रुटि मिली। <customErrors mode="Off" /> का कोई प्रभाव नहीं लग रहा था, लेकिन इवेंट व्यूअर में एप्लिकेशन लॉग की जांच करने से एएसपी.नेट से एक चेतावनी सामने आई जिसमें इस मुद्दे को हल करने के लिए आवश्यक सभी विवरण शामिल थे।


सबसे पहले, web.config में customErrors = "off" सेट करें और अधिक विस्तृत त्रुटि संदेश प्राप्त करने के लिए पुन: नियोजित करें जो हमें समस्या का निदान करने में मदद करेगा। आप उदाहरण में आरडीपी भी कर सकते हैं और त्रुटियों को देखने के लिए स्थानीय रूप से आईआईएस से साइट पर ब्राउज़ कर सकते हैं।

<system.web>
      <customErrors mode="Off" />

पहले अनुमान लगाएं - आपके पास कुछ संदर्भ हैं (सबसे अधिक संभावना है कि एज़ूर एसडीके संदर्भ) जो स्थानीय = सत्य की प्रतिलिपि बनाने के लिए सेट नहीं हैं। इसलिए, आपकी सभी निर्भरताओं को तैनात नहीं किया जा रहा है।

पहले विस्तृत त्रुटि प्राप्त करें और अपना प्रश्न अपडेट करें।

अद्यतन: वीएस2013 में अब उपलब्ध दूसरा विकल्प क्लाउड सेवा या वर्चुअल मशीन को दूरस्थ डिबगिंग करना है





server-error