2011-12-14 12 views
23

मैं 'का निर्माण' VS2010 में मेरी MVC3 वेब एप्लिकेशन तथापि निम्न त्रुटि हो रही रखने के लिए कोशिश कर रहा हूँ:त्रुटियाँ बिल्ड - 'System.Web.Mvc.ModelClientValidationRule' संघर्ष

त्रुटि 2 प्रकार 'System.Web.Mvc .ModelClientValidationRule 'दोनों में मौजूद है c: \ Program Files (x86) \ Microsoft ASP.NET \ ASP.NET MVC 3 \ Assemblies \ System.Web.Mvc.dll' और 'c: \ Program Files (x86) \ Microsoft ASP .NET \ ASP.NET वेब पेज \ v2.0 \ Assemblies \ System.Web.WebPages.dll 'सी: \ उपयोगकर्ता \ brownp \ दस्तावेज़ \ विजुअल स्टूडियो 2010 \ प्रोजेक्ट \ कैब \ कैब \ मॉडल \ AccountModels.cs 223 28 कैब

साथ ही, हर बार जब मैं समाधान खोलता हूं, तो यह मुझे निम्न के साथ संकेत देता है:

VS2010 error when opening solution

मैं वेब प्लेटफार्म इंस्टालर के माध्यम से स्थापित करता हूं और यह सफलतापूर्वक स्थापित करता है हालांकि हर बार जब मैं समाधान खोलता हूं तो संदेश फिर से दिखाई देता है।

कोई भी कोई मार्गदर्शन प्रदान कर सकता है?

धन्यवाद पॉल

उत्तर

44

आज MVC4 बीटा स्थापित करने के बाद, मेरे MVC 3 परियोजनाओं के कुछ संकलन नहीं होगा। (ModelClientValidationRule संघर्ष) फिक्स था:

संपादित करें:

ProjectName.csproj 

बदलें

<Reference Include="System.Web.WebPages"/> 

करने के लिए

<Reference Include="System.Web.WebPages, Version=1.0.0.0, 
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/> 
+1

मैं अंत में मान्य करने के लिए है कि बस जोड़ने संस्करण = 1.0.0.0 के लिए पर्याप्त है में सक्षम था। इस प्रकार <संदर्भ शामिल = "System.Web.WebPages, संस्करण = 1.0.0.0" /> –

+0

एमवीसी 5 उपयोग संस्करण = 2.0.0.0 –

+0

संदर्भ सूची में 'System.Web.WebPages' का चयन करना, और' विशिष्ट संस्करण 'गुण को बदलना 'झूठा' मेरे लिए काम किया। –

13

ठीक है इस समाधान की कोशिश ...

  1. रूट Web.config फ़ाइल में, कुंजी वेबपृष्ठों के साथ एक नई प्रविष्टि जोड़ें: संस्करण और मान 1.0.0.0।

2.In Solution Explorer, right-click the project name and then select Unload Project. Then right-click the name again and select Edit ProjectName.csproj.

3.Locate the following assembly references:

<Reference Include="System.Web.WebPages"/> 
    <Reference Include="System.Web.Helpers" /> 

उन्हें निम्न से बदलें:

<Reference Include="System.Web.WebPages, Version=1.0.0.0, 
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/> 
<Reference Include="System.Web.Helpers, Version=1.0.0.0, 
Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL "/> 

4.Save परिवर्तन, परियोजना बंद (.csproj) फ़ाइलआप संपादन कर रहे थे, और फिर प्रोजेक्ट पर राइट-क्लिक करें और रीलोड का चयन करें।

संदर्भ: http://forums.asp.net/t/1723108.aspx/1

भी कोशिश: http://www.asp.net/learn/whitepapers/mvc4-release-notes#_Toc303253815

10

समाधान संदर्भों से System.Web.WebPages को हटा दें। यही हे सब।

3

इस संघर्ष से बचने के लिए सबसे अच्छा तरीका है-

  1. सही System.Web.WebPages
  2. पर क्लिक करें निकालें

  • संदर्भ
  • समाधान एक्सप्लोरर पर जाएं अब अपने आवेदन चलाने के लिए और आनंद लें !

  • 0

    यह समस्या, जैसा कि आपने वीएस -2010 में वर्णित किया है, एमएससी (वी 5) के एक नए संस्करण के साथ वीएस2015 में मेरे मामले में हुआ था।

    यहाँ कैसे मैं इसे ठीक करने में सक्षम था है: नवीनतम संस्करण के लिए

    • अद्यतन NUGET संकुल।

    • अपनी प्रोजेक्ट में, Microsoft.AspNet.WebPages के संदर्भों को हटा दें। फिर, नवीनतम पैकेज का उपयोग (प्रयोग "ब्राउज़ ...") द्वारा संदर्भ फिर से जोड़ना:

      C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v2.0\Packages\Microsoft.AspNet.WebPages.2.0.30506.0\lib\net40

    • सुनिश्चित करें कि सभी परियोजनाओं, एक ही विधानसभा संदर्भित कर रहे हैं यदि नहीं, जैसा कि ऊपर वर्णित उन्हें ठीक। फिर, समाधान को फिर से बनाएं। मेरे मामले में, यह त्रुटि तय की। जैसे

    चेक Web.config फ़ाइल, और ठीक सेटिंग्स:

    <appSettings> 
    <add key="webpages:Version" value="3.0.0.0" /> 
    <add key="webpages:Enabled" value="true" /> 
    ... 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
        <dependentAssembly> 
        <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> 
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
        </dependentAssembly> 
        <dependentAssembly> 
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
        <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" /> 
        </dependentAssembly>