2011-01-24 9 views
14

मैं नई परियोजना ASP.NET MVC 3 RTM बनाएँ और ASP.NET MVC का उपयोग कर के लिए संदर्भ की जगह 3 स्रोत कोडएएसपी.नेट एमवीसी 3 आरटीएम परियोजना में यह त्रुटि क्या है?

लेकिन जब मैं इस परियोजना को फिर से चलाने, इस अपवाद:

[A]System.Web.WebPages.Razor.Configuration.HostSection cannot be cast to [B]System.Web.WebPages.Razor.Configuration.HostSection. Type A originates from 'System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' in the context 'Default' at location 'C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.WebPages.Razor\v4.0_1.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll'. Type B originates from 'System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' in the context 'Default' at location 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\2505c7ee\369315c5\assembly\dl3\f7bae428\d03eeed8_85bbcb01\System.Web.WebPages.Razor.DLL'.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

स्रोत त्रुटि:

Line 106:  internal static RazorWebSectionGroup GetRazorSection(string virtualPath) { 
Line 107:   // Get the individual sections (we can only use GetSection in medium trust) and then reconstruct the section group 
Line 108:   return new RazorWebSectionGroup() { 
Line 109:    Host = (HostSection)WebConfigurationManager.GetSection(HostSection.SectionName, virtualPath), 
Line 110:    Pages = (RazorPagesSection)WebConfigurationManager.GetSection(RazorPagesSection.SectionName, virtualPath) 

Source File: E:\GreenTour\webpages\src\System.Web.WebPages.Razor\WebRazorHostFactory.cs Line: 108

उत्तर

13

यह त्रुटि का अर्थ है कि आपके आवेदन का हिस्सा स्रोत कोड की अपनी प्रति का उपयोग करके संदर्भ के रूप में संकलित किया जा रहा है जबकि रनटाइम पर यह जीएसी में संदर्भ असेंबली ढूंढ रहा है। सुनिश्चित करें कि आप एमवीसी 3 असेंबली के जीएसीएड संस्करण के सभी संदर्भ हटा दें। इसमें आपकी वेब.कॉन्फिग फाइलों में कई चीजें शामिल हैं जो इस सार्वजनिक कुंजी टोकन का उपयोग करती हैं: 31bf3856ad364e35।

0

हालांकि उपर्युक्त धागा उपयोगी था। जब तक मैंने 'डमी' मूल 'एमवीसी 4 एप्लिकेशन' नहीं बनाया तब तक चीजें काम नहीं कर पाईं और फिर किसी भी बदलाव को खोजने के लिए web.configs की तुलना की गई।

13

मैं अपने ऐप को अपग्रेड करते समय एक ही समस्या में आया, समस्या वेब निर्देशिका में स्थित web.config फ़ाइल में थी, मैंने अंधेरे से पुराने ऐप (मेरे खराब) से इसे कॉपी किया।

मेरा समाधान, एक नया एमवीसी 4 ऐप बनाएं और अपनी निर्देशिका में समस्या निर्देशिका से web.config की प्रतिलिपि बनाएँ।

आशा इस

+2

धन्यवाद - आपकी टिप्पणी "दृश्य निर्देशिका में स्थित web.config फ़ाइल" बस मुझे "आह हा!" पल। – DaveHogan

+0

यह। मैं भूल जाता हूं कि दृश्य निर्देशिका (और उप-निर्देशिका) में चारों ओर तैरने वाली अन्य web.config फ़ाइलें हैं। –

+0

+1, आपका समाधान आकर्षण की तरह काम करता है .. :) – dotNETbeginner

0

मैं 31bf3856ad364e35 की सार्वजनिक कुंजी के साथ विधानसभाओं के सभी संदर्भ हटा देना चाहिए क्योंकि यह अप्रासंगिक विधानसभाओं की एक बहुत कुछ शामिल किया गया है द्वारा नहीं इस तय मदद करता है।

इसके बजाय यह सब विन्यास को अद्यतन करने के द्वारा निर्धारित किया जाना चाहिए 2

  • System.Web.WebPages.Razor करने के लिए 4
  • System.Web.WebPages के लिए संदर्भ

    • System.Web.Mvc 2
    • को

    सभी निर्देशिकाओं को अपडेट करना सुनिश्चित करें, जिनमें सभी निर्देशिकाएं शामिल हैं।

  • संबंधित मुद्दे