अपरिचित विशेषता 'targetFramework'। ध्यान दें कि विशेषता नाम केस-संवेदी हैं


416

मैं अपनी साइट को लोड करने का प्रयास कर रहा हूं और मुझे यह त्रुटि संदेश मिल रहा है:

अपरिचित विशेषता 'targetFramework'। ध्यान दें कि विशेषता नाम केस-संवेदी हैं।

<compilation debug="true" targetFramework="4.0">

यह साइट मेरे स्थानीय पीसी पर ठीक काम करती है, लेकिन जब मैंने इसे अपने होस्ट पर लोड किया और इसे ऑनलाइन देखने की कोशिश की तो यह खुल नहीं पाएगी।


क्या यह नहीं दिखाता है कि कौन सी फ़ाइल में वह है या कहाँ है?
जॉन स्कीट

2
क्या इसे पहले प्री 4.0 फ्रेमवर्क पर बनाया गया था? एलीटकोड.com
2009/

यह समस्या 4.0.3 से हल हो सकती है। आप यहां केबी लेख देख सकते हैं। @ मुझे और मुझे बताएं कि यदि यह आपकी समस्या को ठीक कर देता है, तो मैं इस त्रुटि और निकट भविष्य के लिए एक विहित प्रश्न / उत्तर प्राप्त करने का प्रयास कर सकता हूं। धन्यवाद।

जब मैं विन 7 x64 पर KB2599651 (64-बिट डाउनलोड) स्थापित करने का प्रयास करता हूं, तो मुझे त्रुटि संदेश मिलता है कि यह "आपके कंप्यूटर पर किसी अन्य शर्त द्वारा लागू नहीं होता है या अवरुद्ध है"। मेरे पास ओपी के समान त्रुटि है, फ्रेमवर्क 4.0 स्थापित है और इसे आईआईएस के साथ पंजीकृत किया है, और इसे एप्लिकेशन पूल के रूप में चुना है।
टिम

क्या आपने दृश्य स्टूडियो के पुराने संस्करण में खोला था, जिसमें परियोजना विकसित की गई थी? या इसे वेबमैट्रिक्स में विकसित किया गया था और फिर एक पुराने दृश्य स्टूडियो में खोला गया था?
रफ्रे

जवाबों:


610

यह आमतौर पर तब होता है जब आपके पास targetFramework="4.0"web.config का एक गुण होता है, लेकिन ऐप पूल ASP.NET 2.0 को चलाने के लिए सेट है। targetFrameworkविशेषता पूरी तरह से ASP.NET 2.0 से अपरिचित है - अत: 2.0 के लिए इसे बदलने वांछित असर नहीं होगा।

समर्थन / अपने व्यवस्थापक से संपर्क करें और AppPool 4.0 में बदल गया है।

आप पूरी तरह से विशेषता को भी हटा सकते हैं, हालांकि यदि आपकी साइट को 4.0 फ्रेमवर्क के साथ कोडित किया गया था, तो मुझे यकीन है कि कुछ और भी त्रुटि का कारण होगा।


20
धन्यवाद, इसने इस समस्या को हल कर दिया, इस चरण के लिए एक चरण के लिए इस लिंक की जाँच करें आपका AppPool 4.0 में बदल गया है: stackoverflow.com/questions/4890245/…
user1010572

धन्यवाद @ vcsjones..my वेबसाइट अब सिर्फ आपकी वजह से उठ रही है .. :)
शिवा पारीक

सिर्फ @vcsjones समाधान रजिस्टर करने के लिए जोड़ने के लिए .net 4.0 भी याद किया जा सकता है। आप इस लिंक में प्रक्रिया का उपयोग करते हुए .net 4.0 पंजीकरण कर सकते हैं और फिर आपको आवेदन पूल को 4.0 से आगे बढ़ाना होगा।
राम

4
जब मैंने त्रुटि संदेश को देखा, तो मुझे यह पृष्ठ मिला, इस सुंदर प्रश्न के साथ और भी अधिक सुंदर उत्तर, जिसे मैंने महीनों पहले उखाड़ा था।
मेमेत ऑलसेन

81

IIS के साथ फ्रेमवर्क को पंजीकृत करना मेरे लिए क्या है:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis -i

7
यह काम! 64bit के लिए C: \ Windows \ Microsoft.NET \ फ्रेमवर्क 64 \ v4.0.30319 के तहत है
जेरी लियांग

1
मेरे पास एक ही समस्या थी, लेकिन रेजियों ने इसे ठीक नहीं किया - मुझे पूरी वेबसाइट के पेड़ को गिराना और पुन: निर्माण करना था और प्रत्येक ऐप के लिए पूल को पुन: असाइन करना था, और अब यह काम करता है ...
veljkoz

1
यदि यह IIS (इस पर चलने वाली कोई अन्य साइट नहीं) का एक ताज़ा संस्करण है या आप होस्ट किए गए साइटों के बारे में चिंतित नहीं हैं, तो एक फ्रेमवर्क परिवर्तन से आप पंजीकरण के दौरान -ir के बजाय -i का उपयोग कर सकते हैं।
राम

43

अपने IIS खोलें (रन में inetmgr टाइप करें) और अपना एप्लिकेशन पूल सेटिंग बदलें, इस छवि को बड़ा देखने के लिए छवि पर राइट क्लिक करें और छवि टैब पर खोलें यहां छवि विवरण दर्ज करें


43

IIS में

एप्लिकेशन पूल पर क्लिक करें

DefaultAppPool पर राइट क्लिक करें --- >> सेट करें एप्लीकेशन पूल डिफ़ॉल्ट ....--- >> .Net संस्करण को V 4.0 पर बदलें।


26

दृश्य स्टूडियो मेनू में:

वेबसाइट -> प्रारंभ विकल्प -> निर्माण टैब -> ड्रॉपडाउन बॉक्स में लक्ष्य फ्रेमवर्क का चयन करें (.NET फ्रेमवर्क 4)


या 4.5 मेरे मामले में :)
user230910

क्या होगा अगर सर्वर में केवल 2.0 है? 4.0 / 4.5 स्थापित करने के लिए आवश्यक होना चाहिए ??
जरीन

@ user230910 वह विकल्प कहां है?
डिएगोS

मुझे स्पष्ट रूप से याद नहीं है, लेकिन मुझे लगता है कि यह IIS
user230910

AWS EC2 विंडोज सर्वर 2019 पर विजुअल स्टूडियो 2019 वेब फॉर्म्स ऐप का उपयोग करके मेरे लिए 2019 के लिए सही काम किया गया है।
डॉग नल

12

मैं अपनी 1'st वेब सेवाओं को प्रकाशित करते समय उसी समस्या का सामना कर रहा था। मैंने इसे केवल ऐसा करके हल किया:

  1. IIS खोलें

  2. एप्लिकेशन पूल पर क्लिक करें

  3. DefaultAppPool => एप्लिकेशन पूल डिफ़ॉल्ट सेट करें पर राइट क्लिक करें>> .Net संस्करण V 4.0 में बदलें। (आप विशेष रूप से अपने आवेदन का .Net फ्रेमवर्क संस्करण भी बदल सकते हैं)

आशा है, यह काम करेगा।


9

IIS 7 के लिए दिए गए चित्र के अनुसार प्रयास करें ... मुझे मदद करें यदि यह आपके लिए काम करता है।

यहां छवि विवरण दर्ज करें


8

मुझे Windows Server 2008 R2 में हल करने के लिए IIS में ASP.Net को पंजीकृत करना पड़ा। नीचे दिए गए आदेशों का विवरण

cd /d C:\Windows\Microsoft.NET\Framework\v4.0.30319

iisreset /stop

aspnet_regiis -i

iisreset /start

%systemroot%\system32\inetsrv\appcmd set config /section:isapiCgiRestriction /[path='%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll'].allowed:True 

%systemroot%\system32\inetsrv\appcmd set config /section:isapiCgiRestriction /[path='%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll'].allowed:True 

यहां छवि विवरण दर्ज करें


5

क्लासिक के बजाय फ्रेमवर्क 4.0 को लक्षित करने के लिए एप्लिकेशन पूल बदलें।

  1. आरसी वेबसाइट -> प्रबंधन वेबसाइट-> उन्नत सेटिंग>
  2. क्लासिक से फ्रेमवर्क 4 में पहला विकल्प परिवर्तन एकीकृत।

5

मैं IIS की बजाय IIS एक्सप्रेस का उपयोग कर रहा हूं।

यह प्रॉब्लम Applicationhost.config फ़ाइल में स्थित थी: {solution_folder} \। vs। \ Config \ applicationhost.config।

अनुप्रयोग पूल प्रविष्टियों में से एक में "v2.0" का प्रबंधित रुंटटाइम मान था। मैंने इसे "v4.0" में बदल दिया, और इसने ठीक से काम किया।

मुझे पूरा यकीन है कि मूल कारण उन NuGet पैकेजों में से एक था जिन्हें मैंने हाल ही में स्थापित किया था।

    <system.applicationHost>
       <applicationPools>
          <add name="BadAppPool1" managedRuntimeVersion="v2.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
       </applicationPools>
    </system.applicationHost>

2
अच्छा- हर एक पोस्ट में IIS का उल्लेख है। मैं IIS एक्सप्रेस का उपयोग कर रहा था। फिक्स के लिए Thx
फिलिजेएन

4

ओपन प्रोजेक्ट -> Shift + F4 (ओपन प्रॉपर्टीज पेज) दबाएं -> चोज़ बिल्ड -> टारगेट फ्रेमवर्क में .NET फ्रेमवर्क 4 को चुना -> ओके


3

.Net फ्रेमवर्क v4.0.3xxxxx का चयन करके एक नया पूल बनाएं

पाइपलाइन मोड प्रबंधित करें का उपयोग करें: एकीकृत

इसे अपनी साइट पर असाइन करें और किया।


2

इस समस्या को ठीक करने के लिए फ्रेमवर्क को 4.0 पर स्विच करने के लिए कंट्रोल पैनल के साइट टूल्स सेक्शन में ASP.NET वर्जन आइकन पर क्लिक करें।


2

मुझे यह त्रुटि एक असफल MSBuild संकलन से, VS फ़ाइल के पुराने संस्करण से VS2010 और .NET 4.0 में परिवर्तित की गई थी। यह वास्तव में एक वेब परिनियोजन परियोजना थी, और मेरे लिए काम करने वाला समाधान MSBuild फ़ाइल की शुरुआत में प्रॉपर्टी ग्रुप सेक्शन में निम्नलिखित प्रविष्टियाँ जोड़ रहा था :

<ProductVersion>10.0.11107</ProductVersion>

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>

हो सकता है कि जब वीएस २०१० में अन्य प्रकार के प्रोजेक्ट को परिवर्तित किया गया हो, तो ये स्वचालित रूप से अपडेट हो जाते हैं, लेकिन इसे बदलने के बाद वे मेरी वेब परिनियोजन प्रोजेक्ट फ़ाइल से गायब थे।


2

मैंने क्या किया: मैंने पिछले मान से DefaultAppPool के लिए अनुप्रयोग पूल का मान बदल दिया। आप इसे एडवांस्ड सेटिंग (वेबसाइट -> मैनेज वेबसाइट - एडवांस्ड सेटिंग) में करते हैं।


2

मुझे अपने आवेदन को स्थानीय रूप से चलाते समय भी यही मुद्दा मिला जो कि .Net फ्रेमवर्क 4.7.1 की ओर इशारा करता है। बग को " अपरिचित विशेषता TargetFrameWork " के रूप में नीचे दिखाया गया था। यहां छवि विवरण दर्ज करें

लेकिन उपरोक्त जवाबों में से किसी ने भी मेरी मदद नहीं की। अंत में जब मैंने अपना वर्तमान पोर्ट (1413) संख्या कुछ अन्य मान (60179) में बदल दिया, जैसा कि नीचे दिखाया गया है कि यह मेरे लिए ठीक है। लेकिन मुझे इसके पीछे वास्तविक कारण के लिए निश्चित नहीं है, लेकिन यह काम किया।

यहां छवि विवरण दर्ज करें


मैं केवल यह सत्यापित कर रहा हूं कि मुझे यह सटीक त्रुटि मिली है, और मैंने बस इस उत्तर में संकेत के रूप में बंदरगाह को बदलने की कोशिश की। मैं लोकलहोस्ट पर यह सेवा शुरू करने के लिए WCF टेस्ट क्लाइंट चला रहा हूं। पोर्ट नंबर बदलने के बाद, सेवा शुरू करने में सक्षम था। आपका सुझाव देने के लिए धन्यवाद।
इवान

सभी सुझावों को आजमाने के बाद केवल इसने मेरे मुद्दे को हल किया। बहुत बहुत धन्यवाद।
प्रबो

आपका स्वागत है @Prabo यदि संभव हो तो pls मुझे यूपी वोट के साथ मदद करें
रिनॉय अशोकन

आपका स्वागत @ इवान यदि संभव हो तो pls मुझे यूपी वोट के साथ मदद करें
रिनॉय अशोकन

1

वीएस 2010 में बस यही था।

.Sln फ़ाइल को संपादित करके और TargetFrameworkMoniker को बदलकर " असाइन किया गया मान " .NETFramework, संस्करण% 3Dv4.0 "को निर्दिष्ट किया गया है।


0

यदि आप फ़ाइलों को संकलित करते हैं और "targetFramework" का मान एक विशेष संस्करण अर्थात 4.0 के रूप में सेट किया गया है,

सुनिश्चित करें कि होस्ट चल रहा है। जैसा कि एक ही संस्करण में बताया गया है।

यदि नहीं, तो .net फ्रेमवर्क डाउनलोड करें।

डाउनलोड करने के बाद, अगर यह .net फ्रेमवर्क के नए डाउनलोड किए गए संस्करण के विस्तार का उपयोग करने के लिए IIS प्रबंधक में स्वचालित रूप से सेट नहीं किया जा रहा है।

हाल ही में डाउनलोड किए गए .net फ्रेमवर्क THROUGH IIS प्रबंधक के फ़ोल्डर में जाकर मैन्युअल रूप से एक्सटेंशन जोड़ें:

1. राइट-क्लिक वेबसाइट फ़ोल्डर

2. "गुण" के लिए

3. "वर्चुअल निर्देशिका", "कॉन्फ़िगरेशन" पर क्लिक करें

4. एक्सटेंशन के निष्पादन योग्य पथ ".aspx" (जिसमें से पथ को हाल ही में डाउनलोड किए गए .net फ्रेमवर्क के संस्करण के अलावा अन्य संस्करण में इंगित किया जा रहा है) को सही पथ पर लाया जाए जो .net फ्रेमवर्क के नए डाउनलोड किए गए संस्करण का फ़ोल्डर है। और फिर "aspnet_isapi.dll" फ़ाइल का चयन करें।

5. ठीक क्लिक करें!


0

बस "लक्ष्य फ्रेमवर्क 4.0" निकालें और ब्रैकेट को बंद करें।

यह काम करेगा


0

इन दो चरणों का पालन करें:

.Net फ्रेमवर्क संस्करण संस्करण 4.0 पंजीकृत करें (यदि यह पंजीकृत नहीं है)

  1. C: \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319> aspnet_regiis -i

  2. ऐप पूल में .net फ्रेमवर्क को v4.0 में बदलें


0

यदि आप .Net फ्रेमवर्क की स्थापना के बाद IIS स्थापित करते हैं। आपको IIS के लिए फिर से .net फ्रेमवर्क स्थापित करने की आवश्यकता है। तो हम सभी को चलाने की जरूरत है aspnet_regiis -i। आशा है कि यह मददगार है।


0

एक बिल्ड सर्वर पर जेनकींस के 'कंसोल आउटपुट' पेज में "अपरिचित विशेषता '' targetFramework 'त्रुटि को देखा। यह तब था जब मैंने '.NET फ्रेमवर्क 3.5' से कई परियोजनाओं के लिए 'लक्ष्य रूपरेखा' को बदलकर '.NET फ्रेमवर्क 4' कर दिया और अपने बदलाव किए।

जेनकिंस में परियोजना सेटिंग्स को बदलना पड़ा। समाधान के लिए 'MSBuild संस्करण' को 'v3.5' से बदलकर 'v4.0' करना पड़ा।


0

बस इस मुद्दे को एक पुराने आईआईएस बॉक्स में एक नया ऐप तैनात करना था। जांच में v4.5.1 रन-टाइम स्थापित किया गया था, लेकिन एप्लिकेशन को v4.5.2 की आवश्यकता थी

एएसपी .नेट रन-टाइम के सही संस्करण को स्थापित करने के अलावा कुछ भी आवश्यक नहीं था।


0

यह हो सकता है कि आपके पास अपनी खुद की MSBUILD प्रोज फाइल हो और <AspNetCompiler>कार्य का उपयोग कर रहे हों । जिस स्थिति में आपको ToolPath.NET 4 के लिए जोड़ना चाहिए ।

<AspNetCompiler
    VirtualPath="/MyFacade"
    PhysicalPath="$(MSBuildProjectDirectory)\MyFacade\"
    TargetPath="$(MSBuildProjectDirectory)\Release\MyFacade"
    Updateable="true"
    Force="true"
    Debug="false"
    Clean="true"
    ToolPath="C:\Windows\Microsoft.NET\Framework\v4.0.30319\">      
</AspNetCompiler>

0

लेयरिंग के लिए, बस web.config फ़ाइल में targetFramework के संस्करण को बदलें, अन्य चीजों को बदलने की आवश्यकता नहीं है।


0

मेरे पास एक ही मुद्दा था और मुझे एक ही समय में आपके सभी ऐप पूल को अपडेट करने के लिए यह अच्छी poweshell स्क्रिप्ट मिली: https://gallery.technet.microsoft.com/scriptcenter/How-to-set-the-IIS-9c295a20

आपको $IISAppPoolDotNetVersion = "v4.0"शीर्ष पर चर सेट करना सुनिश्चित करें ।


0

निम्नलिखित 2 चरण विज़ुअल स्टूडियो और IIS एक्सप्रेस कैश को रीफ़्रेश करेंगे और आमतौर पर मेरे समान मुद्दों को हल करते हैं:

  1. बस प्रोजेक्ट फ्रेमवर्क को 4+ से .नेट फ्रेमवर्क 3.5 पर स्विच करें और इसे चलाएं
  2. यदि यह सफलतापूर्वक चला तो आप इसे अपने इच्छित 4+ लक्ष्य ढांचे में वापस ला सकते हैं और देख सकते हैं कि यह फिर से काम करेगा।

0

स्थानीय विकास के लिए पोर्ट नंबर बदलने से मुझे @Rinay Ashokan का धन्यवाद मिला। मैंने शूटिंग की सारी परेशानी झेली है और अंत में पाया है कि प्रोजेक्ट कॉन्फ़िगरेशन पोर्ट नंबर के लिए IIS एक्सप्रेस में संग्रहीत हैं। यहां छवि विवरण दर्ज करें


-1

ऐसा कोई भी व्यक्ति जिसके पास IIS अपने देव पीसी पर नहीं चल रहा है, यहां मेरे साथ क्या हुआ: मेरे पास एक वेबसाइट थी, एक अलग वेबसाइट की फाइलों के साथ ओवरवॉट थी जो 4 थी जबकि पिछली 3.5 थी। यह त्रुटि मिली। यह बस वेबसाइट के निर्देशिका नाम को बदलकर तय किया, जो एक देव पीसी पर कुछ भी हो सकता है, इसलिए कोई समस्या नहीं है। उपरोक्त शायद निश्चित रूप से अधिक सुरुचिपूर्ण हैं, लेकिन कभी-कभी सरल काम करता है, यदि आप इसके साथ दूर हो सकते हैं, अर्थात, आप क्यूए या प्रोडक्ट के बजाय देव में हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.