পদ্ধতিটি পাওয়া যায় নি: '!! 0 [] সিস্টেম.আররে.এম্পটি ()'


123

আমি ভিএস 2015 আরসি এবং এমভিসি টেম্পলেট দিয়ে এবং কোডের কোনও লাইন পরিবর্তন না করেই একটি নতুন অ্যাপ তৈরি করেছি যাতে আমার এই ত্রুটি রয়েছে:

Method not found: '!!0[] System.Array.Empty()'.
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.

Exception Details: System.MissingMethodException: Method not found: '!!0[] System.Array.Empty()'.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:


[MissingMethodException: Method not found: '!!0[] System.Array.Empty()'.]
   SAASApp.BundleConfig.RegisterBundles(BundleCollection bundles) in C:\Proyectos\SAASApp\SAASApp\App_Start\BundleConfig.cs:29
   SAASApp.MvcApplication.Application_Start() in C:\Proyectos\SAASApp\SAASApp\Global.asax.cs:18

[HttpException (0x80004005): Method not found: '!!0[] System.Array.Empty()'.]
   System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +483
   System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +118
   System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +176
   System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +350
   System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +305

[HttpException (0x80004005): Method not found: '!!0[] System.Array.Empty()'.]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +661
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +96
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +189

প্রথমবার এটি আমার সাথে ঘটে তাই আমি এই মুহূর্তে আটকে আছি


উত্তর:


232

প্রোডাকশন সার্ভারে আমার এই অবস্থাটি ছিল যখন ডেভলপমেন্ট মেশিনে সবকিছু ঠিক ছিল।

টার্গেট মেশিনে .NET ফ্রেমওয়ার্ক 4.6 ইনস্টল করার ফলে সমস্যাটি স্থির হয়েছে।


46
পিসি লোড লেটার!
জেরেমিওয়ের

9
ধন্যবাদ. সম্ভবত যা ঘটছে তা হ'ল: - কোডটি .NET 4.6 এর বিপরীতে সংকলন করছে, যেখানে রেফারেন্স অ্যাসেমব্লিসিগুলিতে অ্যারে অন্তর্ভুক্ত রয়েছে mp - রোজলিন সংকলকটি দেখতে পায় যে অ্যারে E এমপি <টি> পাওয়া যায় এবং তাই প্যারামগুলির জন্য প্রয়োজনীয় খালি অ্যারে তৈরি করার সময় এটি ব্যবহার করে। - সংকলিত অ্যাপ্লিকেশন .NET 4.5 এ চালানোর চেষ্টা করছে যেখানে অ্যারে.এম্পটি প্রস্থান করবে না।
ওকালটার

2
আমাদের উইন্ডোজ 2008 আর 2 সার্ভারটি ইনস্টলেশন করার পরে একবার পুনরায় চালু করতে হয়েছিল।
কার্ল


আমি .net461 ইনস্টল করেছি তবে এখনও একই ত্রুটি ছিল। নেট 472 ইনস্টল করা আমার জন্য কৌশলটি করেছে
বার্নিফিট্জ

27

পার্টিতে দেরি হওয়ার জন্য দুঃখিত, তবে কেউ যদি টিমসিটি বিল্ডের মাধ্যমে এই সমস্যাটি পান তবে আমাদের কী করতে হবে তা আমি বর্ণনা করতে পারি।

.NET 4.6 আমাদের বিল্ড সার্ভারে ইনস্টল করা হয়েছিল (তবে অ্যাপ্লিকেশন সার্ভারে নয়) এবং রানারটাইপটি ছিল ভিজ্যুয়াল স্টুডিও (স্লান) এবং ভিজ্যুয়াল স্টুডিও বিকল্পটি 2015 এ সেট করা হয়েছিল।

এটি বিল্ডটিকে ৪. use ব্যবহার করতে বাধ্য করেছিল এবং বিল্ডটিকে ৪.৪.২ ব্যবহার করতে বাধ্য করতে আমার ভিজ্যুয়াল স্টুডিও বিকল্পটি ২০১৩-তে পরিবর্তন করতে হবে


5
আমার এক ভাল সহকর্মী আমাকে ইঙ্গিত করেছিলেন যে আপনি ভিজ্যুয়াল স্টুডিও 2015 দিয়ে তৈরি করতে পারবেন যদি আপনার বিল্ড এজেন্টের প্রয়োজনীয়তা থাকে ডটনেটফ্রেমওয়ার্কট্যাটারিংপ্যাক ৪.৫.২ প্যাথ টিমসিটি ৪.6 ইনস্টল করা সত্ত্বেও সমাধানটি 4.5.2 এর দিকে তৈরি করবে
gautejohan

2
@Gman এর পরামর্শ অনুসারে আমি 4.5.2 ডিভ প্যাকটি ব্যবহার করে এই সমস্যাটি সমাধান করেছি। আপনি যেখানে 4.6 ইনস্টল করতে চান না এমন পরিস্থিতিতে এটি আরও ভাল সমাধান বলে মনে হয়।
ডগস

বহু বছর পরে জিজ্ঞাসা করা, এটি আপনার জন্য @ ডগসি। আমি একই পরিস্থিতিতে আছি, আমি 4.6 ইনস্টল করতে চাই না এবং আমার 4.5.2 ইনস্টল করা আছে। তবুও আমি এই সমস্যাটি পেয়েছি। G লোকটি কী পরামর্শ দিয়েছে ??
সিঙ্গসুয়াশ

প্রকল্প কনফিগারেশনে @ সিংসুয়্যাশ, এজেন্টের প্রয়োজনীয়তাগুলিতে যান। সেখানে আপনি নতুন প্রয়োজনীয়তা যুক্ত ক্লিক করুন। প্যারামিটারের নামটিতে ডটনেটফ্রেমওয়ার্কটারেটিংপ্যাক 4.5.2_Path টাইপ করুন এবং শর্ত বিদ্যমান রয়েছে set
gautejohan

11

এই পরিস্থিতির মুখোমুখি অন্যদের জন্য:

আপনি যদি ওয়েব.কমফিগ ফাইলটিতে সন্ধান করেন তবে বুঝতে পারবেন যে <compilation>ট্যাগটিতে আপনার মান রয়েছেtargetFramework 4.6 এর নীচে কোনও সংস্করণে সেট করেছেন। তবে প্রকৃতপক্ষে, আপনি নির্ধারিত সময়ে .NET ফ্রেম ওয়ার্কের মাধ্যমে আপনার অ্যাপ্লিকেশনটি প্রকাশ করেছেন 4..6 বা তার বেশি (এএসপি.নেট এমভিসি 4.. and এবং তার উপরে বর্ণিত)।

সুতরাং আপনি যদি মানটি targetFramework৪.6 এ পরিবর্তন করেন তবে ত্রুটিটি আকারে পরিবর্তিত হবে:

'টার্গেটফ্রেমওয়ার্ক' বৈশিষ্ট্যটি বর্তমানে এমন একটি সংস্করণ উল্লেখ করে যা পরে .NET ফ্রেমওয়ার্কের ইনস্টল করা সংস্করণের চেয়ে পরে।

এটিই আসল ত্রুটি এবং আপনার ওয়েব অ্যাপ্লিকেশনের উত্পাদন পরিবেশে নেট নেট ফ্রেম ওয়ার্কের উপযুক্ত সংস্করণ ইনস্টল করে আপনি এ থেকে মুক্তি পাবেন rid


যাইহোক, আপনি এটি করার পরে এবং অ্যাপ্লিকেশনটি তৈরি করার সময় নির্বাচিত প্রকল্প টেম্পলেটটির উপর নির্ভর করে যদি আপনার কাছে অন্তর্দৃষ্টি এবং কোডডম অ্যাপ্লিকেশন ইনস্টল থাকে তবে আপনাকে আমার মতো করে আনইনস্টল করতে হতে পারে। আমি একটি অ্যারে ত্রুটি পেয়েছি যা রোসলিন এবং মাইক্রোসফ্ট অ্যাপ্লিকেশন অন্তর্দৃষ্টি অনুসরণ করেছে।
ক্লারেন্স

3

.NET ফ্রেমওয়ার্কটিকে সর্বশেষ (4.7.2) এ আপডেট করার ফলে সমস্যাটি সমাধান হয়েছে। সমাধানের জন্য @ আন্দ্রে কোভালেনকোকে ধন্যবাদ

তবে ত্রুটিটি এমন হওয়া উচিত নয়,

এখানে চিত্র বর্ণনা লিখুন

আমি নিশ্চিত নই যে প্রতিটি গ্রাহককে তাদের .NET ফ্রেমওয়ার্ক আপডেট করার বিষয়ে বলছি। আমার এই সমস্যাটি বিশেষত উইন্ডোজ এম্বেডযুক্ত ওএস ইনস্টলড সিস্টেমে ছিল, কেবলমাত্র উত্পাদন পরিবেশে।

আচরণটি কাটিয়ে ওঠার জন্য কি অন্য কোনও উপায় আছে, আমাদের কোড বেস থেকে?


1
আমার প্রকল্পের জন্য পুরানো .NET ফ্রেমওয়ার্ক (4.0 ক্লায়েন্ট প্রোফাইল) এবং সমস্ত ডিএলএল প্রকল্পগুলিও লক্ষ্য করে। :)
নবীন কুমার ভি

2

আমি এই সমাধানটি সাফল্য ছাড়াই চেষ্টা করি।

আমার জন্য সমাধানটি ছিল অ্যাপ্লিকেশন পুলে, 2.0 তে ফিরে আসা, ব্রাউজারে সাইটটি চালানো, ত্রুটিটি দেখুন (কারণ সংস্করণটি ভুল) এবং 4.0 এবং "voilà" এ ফিরে যান, আমি পেয়েছি, ওয়েবসাইটটি খোলা আছে।


2

হতে পারে এটি খুব দেরী হয়েছে তবে আমি একই সমস্যা পেয়েছি এবং নীচের মত স্থির করেছি। আমি ভিজ্যুয়াল স্টুডিও 2015 ব্যবহার করি, ওয়েবকনফিগের কনফিগারেশন সংকলনটি ডিফল্টরূপে নেট নেট ফ্রেম ওয়ার্ক 4.6 এ নির্দেশ করে। আমি কেবল ওয়েবকনফাইগ ফাইলেই সম্পাদনা করতে পারি না। আপনি যদি সার্ভারে .NET ফ্রেম ওয়ার্ক 4.6 ইনস্টল করতে না পারেন এবং আপনার অ্যাপ্লিকেশনটি এটি ব্যবহার করবেন না।

  1. মেনু ডিবাগ> [প্রকল্পের নাম] বৈশিষ্ট্য> অ্যাপ্লিকেশন এ যান।
  2. টার্গেট ফ্রেমওয়ার্ক ড্রপডাউন তালিকা থেকে .NET ফ্রেমওয়ার্ক 4.5 (বা যে কোনও সার্ভার সমর্থন করে এবং আপনার অ্যাপ্লিকেশনটি সামঞ্জস্য করে) চয়ন করুন।
  3. আবার পুনর্নির্মাণ।

0

আমার ক্ষেত্রে, আমি আমার উইন্ডোজ সার্ভার 2012 আর 2 তে একটি দুর্নীতিগ্রস্থ। নেট স্থাপন করেছি। আমাকে .NET (v4.7.1) এর আরও একটি সাম্প্রতিক সংস্করণ ইনস্টল করতে হয়েছিল এবং সাইটটি এখন কাজ করছে।


0

আমার ক্ষেত্রে, আমি নিজেই আইআইএসে অ্যাক্সেস পাচ্ছি না এবং যখন আমি একটি একক পদ্ধতি ব্যবহার করি যা কেবল নেট নেট 2 এর বিশেষ কিছু না থাকে তখন আমি ব্যবহার করছিলাম।

সমাধান: আমি সেই পদ্ধতিটি বের করেছি এবং। নেট 2.0 দিয়ে একটি ক্লাস লাইব্রেরি তৈরি করেছি এবং এটি কাজ করে।


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.