'সিস্টেম.Web.Mvc' নাম স্পেসে টাইপ বা নেমস্পেসের নামটি বিদ্যমান নেই


217

এমভিসি 3 সমাধান ক্রয় করা ভাল গিয়েছিল তবে ব্রাউজারে একটি ত্রুটি পেয়েছে:

সংকলক ত্রুটির বার্তা: CS0234: টাইপ বা নাম স্থান 'এইচটিএমএল' নাম স্থান 'সিস্টেম. ওয়েবে.এমভিসি' তে বিদ্যমান নেই (আপনি কি কোনও সমাবেশের রেফারেন্স মিস করছেন?)

Source Error:
Line 25:         <add namespace="System.Web.Mvc" />
Line 26:         <!--<add namespace="System.Web.Mvc.Ajax" />-->
Line 27:         <add namespace="System.Web.Mvc.Html" />
Line 28:         <add namespace="System.Web.Routing" />
Line 29:         <add namespace="System.Web.WebPages" />

আমি সমাধানের সাথে প্যাকেটগুলি ইনস্টল করেছি NuGetএবং সমস্ত প্রকল্পের জন্য সেট আপ করেছি MVC3। নেই MVC3লাইব্রেরীর System.Web.Mvc.Ajax, System.Web.Mvc.Htmlএবং অন্যদের? আমি কেন ত্রুটি পাচ্ছি?


রেফারেন্স ফোল্ডারে, আমার কাছে System.Web.Mvc আছে

Runtime version: v4.0.30319,

Version: 3.0.0.0

Web.config

<?xml version="1.0" encoding="utf-8"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=152368
  -->
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <appSettings>
    <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
    <add key="webpages:Version" value="1.0.0.0" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  </appSettings>
  <system.web>
    <compilation debug="true" targetFramework="4.5" />
    <authentication mode="Forms">
      <forms loginUrl="~/Account/LogOn" timeout="2880" />
    </authentication>
    <pages>
      <namespaces>
        <add namespace="System.Web.Helpers" />
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <add namespace="System.Web.WebPages" />
      </namespaces>
    </pages>
    <httpRuntime targetFramework="4.5" encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    <machineKey compatibilityMode="Framework45" />
    <profile defaultProvider="DefaultProfileProvider">
      <providers>
        <add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
      </providers>
    </profile>
    <membership defaultProvider="DefaultMembershipProvider">
      <providers>
        <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
      </providers>
    </membership>
    <roleManager defaultProvider="DefaultRoleProvider">
      <providers>
        <add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
      </providers>
    </roleManager>
    <sessionState mode="InProc" customProvider="DefaultSessionProvider">
      <providers>
        <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
      </providers>
    </sessionState>
  </system.web>
  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
  </system.webServer>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
  </entityFramework>
  <connectionStrings>
    <add name="EFDbContext" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=SportStore;Integrated Security=True;Pooling=False;" providerName="System.Data.SqlClient" />
  </connectionStrings>
</configuration>

MSDN The System.Web.Mvc নেমস্পেস

ফাইল packages.config:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="EntityFramework" version="5.0.0-rc" />
  <package id="jQuery" version="1.7.2" />
  <package id="jQuery.UI.Combined" version="1.8.11" />
  <package id="jQuery.Validation" version="1.9" />
  <package id="Microsoft.AspNet.Mvc" version="3.0.20105.1" />
  <package id="Microsoft.AspNet.Providers.Core" version="1.0" />
  <package id="Microsoft.AspNet.Providers.LocalDB" version="1.0" />
  <package id="Microsoft.AspNet.Razor" version="1.0.20105.408" />
  <package id="Microsoft.AspNet.WebPages" version="1.0.20105.408" />
  <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" />
  <package id="Modernizr" version="2.0.6" />
  <package id="Moq" version="4.0.10827" />
  <package id="Ninject" version="3.0.1.10" />
</packages>

1
আপনার ওয়েব সার্ভারটি কী? এটা কি আইআইএস এ?
ড্যানিয়েল এ। হোয়াইট


1
আপনার প্রকল্পের লক্ষ্য কি সেট করা হয়েছে?
ড্যানিয়েল এ। হোয়াইট


2
এই প্রশ্নটি কে হিট করে তার উপর নির্ভর করে - সমাধানের জন্য নুগেট প্যাকেজগুলি পরিচালনা করুন আমাদের জন্য এই সমস্ত প্রয়োজন ... >> আপডেট
টম স্টিকেল

উত্তর:


420

আপনার সমাধানটি পরিষ্কার করুন এবং তারপরে সেই ফাইলগুলির সম্পত্তি সেট করুন Copy Local = True

স্থানীয় সম্পত্তি অনুলিপি করুন সত্য বা মিথ্যা সেট করতে

সলিউশন এক্সপ্লোরার-এ, রেফারেন্স নোডটি প্রদর্শন করতে সমস্ত ফাইল দেখান বোতামটি ক্লিক করুন।

  • প্রকল্পের জন্য রেফারেন্স নোডটি খুলুন।
  • রেফারেন্স তালিকার একটি রেফারেন্সে ডান ক্লিক করুন, এবং বৈশিষ্ট্যগুলি ক্লিক করুন। সেই উল্লেখের সাথে সম্পর্কিত বৈশিষ্ট্যগুলি সম্পত্তি উইন্ডোতে একটি তালিকায় উপস্থিত হয়।
  • প্রোপার্টি উইন্ডোতে, স্থানীয় সম্পত্তি অনুলিপি করুন সত্য বা মিথ্যাতে পরিবর্তন করুন।

11
অসাধারণ! এটি আমার জন্য একটি এমভিসি 4 প্রকল্পে এটি স্থির করেছে। আপনি যখন এটি সম্পর্কে চিন্তা করেন এটি একধরনের স্পষ্ট। ডিএলএল রয়েছে কিনা তা দেখার জন্য আমি কখনই মোতায়েন করা প্রকল্পের দিকে নজর দিইনি।
অ্যালেক্স কিলপ্যাট্রিক

1
ধন্যবাদ! এটি আমাকে খুব সাহায্য করেছে!
মেরিটিম

1
আপনাকে স্বাগতম. কখনও কখনও জটিল সমস্যাগুলি সহজ সমাধান দ্বারা সমাধান করা হয়। :)
টফি

5
এটি কাজ করে! আমি কেবল একটি রেফারেন্সই পরিবর্তন করেছি =>System.Web.Mvc
জায়েদার

5
"এই ফাইলগুলি" বলতে কী বোঝায় তা বুঝতে আমাকে কিছুক্ষণ সময় লাগল। সমাধানের প্রতিটি প্রকল্পের বিধানসভা রেফারেন্সগুলি দেখুন, "মাইক্রোসফ্ট এএসপি.এনইটি \ এএসপি.নেট এমভিসি 3 \ অ্যাসেমব্লিগুলি" বা পথের মতো কিছু হ'ল সমস্যাটির অংশ।
টাস্ক

60

যে কারণেই হোক না কেন, আমার সমাধানগুলির দু'টি ওয়েব প্রকল্প রয়েছে যা স্বতঃস্ফূর্তভাবে এএসপিএন এমভিসি কে আনইনস্টল করে। আমি এটি নুগেট থেকে ইনস্টল করেছি এবং এখন তারা দুজনেই আবার কাজ করে। উইন্ডোজ আপডেটের সাম্প্রতিক ব্যাচের পরে এটি ঘটেছে যা আমি যে সংস্করণটি ব্যবহার করছিলাম তার জন্য নেট ফ্রেমওয়ার্ক আপডেট অন্তর্ভুক্ত করেছে (4.5।)

সম্পাদনা করুন: নেট ওয়েব বিকাশ এবং সরঞ্জামগুলি ব্লগ থেকে:

মাইক্রোসফ্ট Asp.Net MVC সিকিউরিটি আপডেট MS14-059 আমার বিল্ডটি ভেঙে দিয়েছে!


4
এই মাত্র আমার ঘটেছে। তবে, আমি আমার এমভিসি প্যাকেজগুলি পুনরায় ইনস্টল করার পরিবর্তে আপডেট করেছি (আমার কোনওভাবেই পুরানো হয়েছিল)। কেন এমন কোনও উত্স বা কারণ আছে?
জোশুয়া এইচ

5
আপনি কেবি 2994379 বা KB2992080 এর সাথে সম্পর্কিত বলে মনে হচ্ছে , আপনি রেফারেন্স করছেন এমন এমভিসি এর কোন সংস্করণ (যথাক্রমে 5.1 এবং 5.0) এর উপর নির্ভর করে। আপডেটটি System.Web.Mvc এর একটি নতুন সংস্করণ সরবরাহ করে যা আমি ধারণা করি যে একটি সংস্করণ সংঘাতের সূচনা করছে। আপনার এমভিসি প্যাকেজ আপডেট করা ত্রুটিটি ঠিক করবে। আপনি যদি কোনও কারণে আপডেট করতে না পারেন তবে আপনাকে স্থানীয়ভাবে অনুলিপি করার জন্য System.Web.Mvc.dll সেট করতে হবে।
ভিনি কেলি

1
আমারও একই সমস্যা ছিল। প্যাকেজটি আপডেট করুন এবং স্থানীয় অনুলিপি সেট করুন = সত্য। ধন্যবাদ সবাইকে!!!!
ভ্যাকআপ

1
এমভিসি অনুলিপি স্থানীয় = সত্য +1।
স্ট্যানোমেটিক

4
আমার ক্ষেত্রেও তাই হয়েছিল। স্থানীয় = মিথ্যা, পুনর্নির্মাণ, স্থানীয় = সত্য, অনুলিপি, পুনর্নির্মাণের জন্য এমভিসি সেট করতে হয়েছিল। সব ভালো.
Jeppebm

38

আমি যখন আইআইএস থেকে চালনা করি তখন এটির সাধারণত আমাকে ধরা হয় এবং ডিফল্ট সাইটের জন্য অ্যাপ পুলটি .NET সংস্করণ 2.0 এ সেট করা হয়। ভিজ্যুয়াল স্টুডিও থেকে আইআইএস ব্যবহার করার সময় এটি একটি ভার্চুয়াল ডিরেক্টরি তৈরি করে তবে এটি ডিফল্ট সাইটের অ্যাপ পুলের অধীনে চলে। যদি বিল্ড ইন ওয়েব সার্ভারটি ব্যবহার করে থাকেন তবে আপনার ওয়েব প্রকল্পে ডান ক্লিক করুন, বৈশিষ্ট্যে যান এবং নিশ্চিত করুন যে আপনি এটি নেট। এর সঠিক সংস্করণে চালাচ্ছেন। আইআইএস-এ আপনার অ্যাপ পুলের .NET সংস্করণটি পরীক্ষা করুন।

প্রকল্পটি কীভাবে তৈরি হয়েছিল সে সম্পর্কে আমার শেষ মন্তব্যটি অনুসরণ করে - আপনি কি নীচে ঠিক মতো অ্যাসেমব্লিগুলি সহ সঠিকভাবে অন্তর্ভুক্ত রয়েছেন (ভিএস 10 তে এমভিসি 3 প্রকল্পের টেম্পলেট দ্বারা উত্পন্ন ডিফল্ট ওয়েবকনফিগ ফাইল থেকে নেওয়া):

<compilation debug="true" targetFramework="4.0">
      <assemblies>
        <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      </assemblies>
</compilation>

2
সমস্ত প্রকল্প। নেট ফ্রেমওয়ার্ক 4.5 ব্যবহার করার জন্য সেট। এর অর্থ কী? .NET 4.5 সিস্টেম.সাহেব.এমভিসি.আজাক্স এবং অন্যান্য ক্লাসগুলি খুঁজে পাবে না?
জে.আলুফসেন

সাধারণত এটির অর্থ এটি 4.5 হিসাবে চলতে চলেছে তবে বাস্তবে এটি অন্যরকম হিসাবে চলছে যার অর্থ এটি System.Web.Mvc তে System.Web.Mvc.Ajax খুঁজে পাচ্ছে না।
ব্ল্যাকএসপি

সরাইয়া হিসাবে, আপনার System.Web.dll সংস্করণটি কী? আমি জিজ্ঞাসার কারণটি হ'ল আপনি বলেছেন যে আপনি নুগেট থেকে অ্যাসেম্বলিগুলি যুক্ত করেছেন - আপনি কি এমভিসি 3 ওয়েব প্রকল্প তৈরি করেন নি?
ব্ল্যাকএসপি

31

আপনাকে এমভিসি আপডেট করতে হবে।

  1. সরঞ্জামগুলিতে যান -> নুগেট প্যাকেজ ম্যানেজার -> সমাধানের জন্য নিউগেট প্যাকেজগুলি পরিচালনা করুন
  2. "আপডেটস" এ ক্লিক করুন
  3. "মাইক্রোসফ্ট এএসপি.নেট এমভিসি" আপডেট করুন
  4. সমাধান পুনর্নির্মাণ

1
নুগেট প্যাকেজটি ব্যবহার করা ভাল তবে তবে এটি এক টন অন্যান্য এসেম্বল ডাউনলোড করতে পারে যা প্রয়োজন হয় না, তবে এটি এটি ঠিক করে দেবে।
ক্যানভাস

1
একই সমস্যা ছিল, কিছু অনুগ্রহ আছে।
নিট

28

আমার একই সমস্যা ছিল - আমার পরিস্থিতিটি হ'ল আমি একটি লাইব ফোল্ডার থেকে নতুন System.Web.Mvc.dll উল্লেখ করছি এবং আমার কাছে "কপিরাইট লোকাল" সত্য হিসাবে সেট করা নেই। অ্যাপ্লিকেশনটি তখন জিএসি-র সংস্করণে ফিরে আসছিল যার এতে সঠিক নেমস্পেস (এইচটিএমএল, আজাক্স ইত্যাদি) নেই এবং আমাকে রান টাইম ত্রুটি দিচ্ছিল।


16

আমার সলিউশনটি সলিউশনের জন্য ম্যানেজ নিউজ প্যাকেজগুলির অধীনে ছিল ... - বেশ কয়েকটি প্যাকেজের জন্য আমার বেশ কিছু আপডেট ছিল।

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

সমাধানে ফিরে আসুন ... আমি কেবলমাত্র সমাধানের জন্য নিউজ প্যাকেজগুলি পরিচালনা করতে গিয়েছিলাম ... >> আপডেট >> মাইক্রোসফ্ট এবং। নেট এবং আপডেট সমস্ত বোতামটি চাপুন

সবকিছু স্বাভাবিক এবং খুশিতে ফিরে এসেছিল।


আমি একই ধরণের সমাধান পোস্ট করেছি দুর্ঘটনাক্রমে আপনার পোস্টটি আপনার জন্য +1
এড়ানোর

এটি আমার জন্যও ঠিক ছিল।
ব্র্যাডজ

নোট করুন যে এটি করার পরে আপনার জিকুয়ারি এবং বুটস্ট্র্যাপ আপডেট করার প্রয়োজন হতে পারে
কার্ল ওঞ্জার

এমভিসি, রেজার এবং ওয়েবপৃষ্ঠাগুলি নুগেট প্যাকেজগুলি আপডেট করা আমার জন্য এমভিসি 5 প্রকল্পে কাজ করেছে।
ভোম

9

আমি একটি এমভিসি 5 প্রকল্প এবং আপত্তিজনক সমস্যাটি ইঙ্গিত করে ডাউনলোড করেছি

<add namespace="System.Web.Mvc.Ajax" />  

এই ত্রুটি বার্তা সহ:

CS0234: The type or namespace name 'Ajax' does not exist in the namespace 'System.Web.Mvc' (are you missing an assembly reference?)

-> যা আমি এই ওয়েবপৃষ্ঠায় এসেছি এবং উপরের কিছু পরিষ্কার এবং কিছু চেষ্টা করেছি ...

আমার জন্য যা কাজ করেছে তা কেবল ছিল

Manage Nuget and Update all the packages.  Then it worked fine.

1
ওহ, আমি আমার পোস্টিংটি ছেড়ে দেব, কিন্তু আমি দেখতে পাচ্ছি যে আজ্কার 3 একই কথা বলছে। তাকে উজ্জীবিত করা।
টম স্টিকেল

7

নুগেট প্যাকেজ ম্যানেজারে নিম্নলিখিত কমান্ডটি চালানো আমার জন্য এটি ঠিক করে দিয়েছে:

update-package microsoft.aspnet.mvc -reinstall

2
এটি আরও এক হাজার বার upvated করা প্রয়োজন।
চাটত 3

1
@ চ্যাজট3এন আমার পক্ষে কাজ করেনি তবে এটি একটি ভাল পরামর্শ তাই + ১
জারেড বিচ

আমি অন্যান্য সমস্ত পদ্ধতির সমস্ত চেষ্টা করেছিলাম, এবং প্রযুক্তিগতভাবে প্যাকেজ ম্যানেজার ব্যবহার করে আনইনস্টল এবং পুনরায় ইনস্টল করা এবং আপডেট করেছি এবং কী নয়। সুতরাং আমি এই উত্তর সম্পর্কে হতাশ ছিল, কিন্তু মরিয়া। এটি একরকম কাজ করেছে।
মহেশ 21

6

এই উত্তরটি প্রশ্নের তারিখের পরিবর্তে দেরি করা হয়েছে তবে কেউ এটি দরকারী বলে মনে করতে পারেন।

উপরে সমাধান কোনটি একটি স্থানীয় প্রকল্পে ভিসুয়াল স্টুডিও 2012 সালে আমার জন্য কাজ, নেট ফ্রেমওয়ার্ক 4.5 MVC 4. প্রসঙ্গ জন্য, আমি একটি barebones তৈরির CodeProject ওয়েব API (একটি টিউটোরিয়াল অনুসরণ করছিলেন http://www.codeproject.com/ নিবন্ধগুলি / 615805 / এ-ক্লিন-এ-মিনিমাল-পাদপ্রিন্ট-এএসপি-নেট-ওয়েবএপিআই ) যখন আমি এই সমস্যার মধ্যে পড়ে যাই।

আমার জন্য কী কাজ করেছিল তা স্পষ্টভাবে আমার অ্যাপ্লিকেশনটির রেফারেন্সগুলিতে "System.Web.Mvc" যুক্ত করছে, যদিও অ্যাপ্লিকেশনটি ইতিমধ্যে "System.Web" রেফারেন্স দিয়েছে।


ধন্যবাদ। এটি আমার সমস্যাটি সমাধান করেছে (
ভেবেছিলেন

+1 টি। আমি এমভিসিসাইটম্যাপপ্রোভাইডার ব্যবহার করছি এবং যেহেতু এটি এমভিসির সর্বশেষ সমাবেশগুলির সাথে কাজ করে না, তাই আমি নুগেটের মাধ্যমে মাইক্রোসফ্ট এএসপি.নেট এমভিসি প্যাকেজগুলির জন্য একটি "আপডেট অল" করতে পারিনি। আরও একটি পরামর্শ হ'ল এই সমাবেশের জন্য আপনার সম্ভবত একটি "কপিরাইটলোকাল = সত্য" করা দরকার।
ব্যবহারকারী007

কেবলমাত্র নতুন পরিবেশে ডিবাগ ওয়েব অ্যাপ্লিকেশনটিকে ধাক্কা দেওয়ার দরকার। রেফারেন্সে "কপি লোকাল" যুক্ত করা দরকার।
dudeNumber4

4

আমার একই সমস্যা ছিল, তবে উপরের কেউই আমার পক্ষে কাজ করেননি। যদিও তারা আমাকে সঠিক দিকে নিয়ে গেছে।

উদাহরণস্বরূপ, যখন আমি সিস্টেমের জন্য "স্থানীয় অনুলিপি" "সত্য" হিসাবে সেট করি e

আমার একাধিক প্রকল্প রয়েছে যা আমার সমাধানে System.Web.Mvc রেফারেন্সের উপর নির্ভর করে তবে কেবল একটিই এই সমস্যার কারণ হয়ে দাঁড়িয়েছে। ভিএস ২০১২ সালে এই উল্লেখটি হলুদ মনোযোগ ত্রিভুজ দিয়ে লেবেলযুক্ত led

এই রেফারেন্সটি সন্ধান করুন => এটিকে সরান => এটিকে আবার যুক্ত করুন

এটা আমার জন্য এটি স্থির। আশাকরি এটা সাহায্য করবে


3

আপনার সিএসপিজে রেফারেন্স পাথগুলি দেখুন এবং চেক করুন।

আমি System.Web.Mvc (এবং অন্যান্য) এর উল্লেখগুলি সরিয়ে দিয়ে তাদের একটি কাস্টম পথে সংযুক্ত করেছি ded C:\Project\OurWebReferences

যাইহোক, এটি করার পরেও স্থির সিএসপ্রোজে রেফারেন্সের পথটি পরিবর্তন হয়নি। ছিলেন

<Reference Include="System.Web.Mvc, Version=4.0.0.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\..\..\..\OurWebProject\bin\Debug\System.Web.Mvc.dll</HintPath>
</Reference>

ম্যানুয়ালি পরিবর্তিত হয়েছে

<Reference Include="System.Web.Mvc, Version=4.0.0.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
        <HintPath>..\..\..\..\OurWebReferences\System.Web.Mvc.dll</HintPath>
</Reference>

পথগুলি একটি উদাহরণ মাত্র।


3

আমার জন্য, সমাধানটি ছিল যে সমস্ত প্রকল্প একই সিপিইউয়ের জন্য তৈরি করছে - আমার ক্ষেত্রে x86


2

স্থানীয় অনুলিপি করুন = সত্যটি আমার এক প্রকল্পের জন্য সমাধান হয়েছিল। তবে অন্য প্রকল্পে, আমি একই ত্রুটি পেয়েছি, কপি স্থানীয় = সত্য সেট করার চেষ্টা করেছি, তবে এটি আমার সমস্যার সমাধান করে না। প্রকল্পের বৈশিষ্ট্যগুলিতে 4.5.1 থেকে টার্গেটের কাঠামো পরিবর্তন করা এতে সহায়তা করে।


2

আমি সত্যিই বোকা কিছু করেছি (এবং সম্ভবত আপনিও করেছিলেন)।

আমি ফোন করার চেষ্টা করছিলাম System.Web.Mvc.Html.Partial("<Partial Page>")

সিস্টেম.ওয়েব.এমভিসি.এইচটিএমএল একটি শ্রেণি নয়, একটি নামস্থান এবং আমি আমার ত্রুটির বার্তাটি এত ভালভাবে পড়িনি, সুতরাং আমি আমার ত্রুটিটি ব্যাখ্যা করেছি কারণ Htmlনামপদ ব্যবস্থাতে সিস্টেমটি নেই। ওয়েব.এমভিসি এবং এইভাবেই আমি শেষ করেছি আপ এখানে (বোকা আমি জানি)

আমাকে যা করতে হবে তা হ'ল @using System.Web.Mvc.Htmlআমার পৃষ্ঠায় একটি ব্যবহারের বিবৃতি যুক্ত করা এবং তারপরে @Html.Partialপ্রত্যাশা অনুযায়ী কাজ করা।


ভিজ্যুয়াল স্টুডিও 2015 এটি প্রয়োজনীয়তার হিসাবে ব্যবহার করে পতাকাঙ্কিত করবে, তবে আপনি যদি এটি সরিয়ে ফেলতে দেন তবে আপনি এর মতো ত্রুটি পাবেন: "মাইক্রোসফ্ট.ওয়েব 'নাম স্পেসে টাইপ বা নেমস্পেসের নাম' হেল্পার্স 'নেই ( একটি সমাবেশ রেফারেন্স?) "।
justdan23

1

যদি উপরের কোনওটি যদি আপনার সমস্যার সমাধান না করে তবে কেবল স্থানীয় ট্যুর অনুলিপি করতে System.Web.Mvc.dll এর বৈশিষ্ট্য সেট করুন।

এটি সমাধান করবে


1

আমারও একই সমস্যা ছিল, তবে আমার ক্ষেত্রে অন্যান্য বিষয় দ্বারা উদ্ভূত হয়েছিল। আমি একই সমস্যা অন্য লোকদের সাহায্য করার জন্য এটি লিখছি। আমার একাধিক প্রকল্পের সাথে সমাধান রয়েছে। তাদের মধ্যে দুটি সিস্টেম.সেম্ব.এমভিসি সহ কাজ করে, সাধারণত আমাদের রেফারেন্সটি বাহ্যিক প্যাকেজগুলিতে ইঙ্গিত করত যেখানে আমরা ব্যবহৃত সংস্করণটি নিয়ন্ত্রণ করি। কোনও কারণে প্রকল্পের একটি রেফারেন্স জিএসি-তে যায় এবং জিএসি ডেলকে নির্দেশ করে (সংস্করণ to.০.০.১) এবং প্রোগ্রামটি ত্রুটি পেয়েছে। এটি সংশোধন করতে:

System.Web.Mvc- র রেফারেন্স একই ডিরেক্টরি পথে একই dll নির্দেশ করে কিনা তা সহজ পরীক্ষা করে দেখুন।

আমি আশা করি যে সাহায্য।


1

আমি আমার সাইটের বিন ফোল্ডার থেকে System.Web.dll মুছে ফেলেছি।


আমি আমার মামলা হ্যাঁ। আমি এমভিসি ছাড়াই পুরানো শাখায় স্যুইচ করছিলাম। এবং বিন. ফোল্ডারের মধ্যে System.Web.dll আমার বিল্ডটি ভেঙে দিয়েছে।
andre719mv

1

আমার এই সমস্যাটি ছিল, স্থানীয় অন-অফ কপি সেট করা কাজ করে না। প্রকল্পটি নুগেট ব্যবহার করছিল না তাই আশেপাশের সংশোধনগুলিও প্রশ্নটির বাইরে ছিল।

আমার জন্য সমাধানটি ছিল এমভিসি 3 ইনস্টল করা (যা আমি ওয়েব প্ল্যাটফর্ম ইনস্টলারের মাধ্যমে করেছি)।

আমার সন্দেহ হয় যে এটি নেটওয়াক ফ্রেমওয়ার্কটি এগিয়ে চলেছে এবং লোকেরা আরও পুরানো এমভিসি স্টাফ ইনস্টল না করে থাকায় এটি আরও একটি সমাধান হয়ে উঠবে।


1

সম্ভবত আপনার ডিএলএলকে কপিরলোকল / সত্য বা অন্য কোনও বড় ফিক্সগুলির জন্য সেট করা আপনার সমস্যাটি সমাধান করবে, তবে এখানে আরও একটি অ্যাড-কেস যা আমাকে 20 মিনিটের নষ্ট সময়ের জন্য ধরে ফেলেছে।

আপনি যখন নিজের নেমস্পেসগুলি আপনার ভিউ / ওয়েবকনফাইগে যুক্ত করেন, সেগুলি সঠিকভাবে কেস করা হয়েছে তা নিশ্চিত করুন:

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="THE.NameSpace" />
        <add namespace="THE.Namespace" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>

1

ঠিক আছে তাই অনেক লোক মনে হয় এই সমস্যাটি অনুভব করছে। অন্যান্য সমস্যাগুলির বিন ফোল্ডারগুলির জন্য পথ রয়েছে বা সিস্টেম ফোল্ডারগুলি থেকে ডেল রেফারেন্সের কারণে আমার সমস্যা হয়েছিল। প্রকল্পটি প্রায় 6 বছর পুরানো ছিল এবং পূর্ববর্তী বিকাশকারীরা সিদ্ধান্ত নিয়েছিলেন যে এইভাবে তারা তাদের লাইব্রেরিগুলি উল্লেখ করতে যাচ্ছেন।

সমাধানটি ছিল প্রতিটি রেফারেন্সের মধ্য দিয়ে গিয়ে পাথগুলি পরীক্ষা করা, তারপরে রেফারেন্সটি সরিয়ে এবং নিউগেট ব্যবহার করে এটি যুক্ত করা। যে কোনও প্যাকেজ যা নুগেটে ছিল না তার জন্য আমি প্যাকেজগুলির পাশাপাশি অন্য একটি ফোল্ডার তৈরি করেছি এবং সেখানে ডেলিকে নুগেটের মতো একই লেআউটে রেখেছি।

আমাকে কনফিগার ফাইলগুলির মধ্যে দিয়ে গিয়ে প্যাকেজগুলির সঠিক সংস্করণ ব্যবহার করা হচ্ছে তা নিশ্চিত করতে হয়েছিল। একটি দীর্ঘ এবং বেদনাদায়ক প্রক্রিয়া!


1

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


0

আমার একই সমস্যা ছিল, সমাধানগুলির মধ্যে আমার পক্ষে কোনও কাজ হয়নি, শেষ অবধি আমি System.Web.MVCএটিকে সরিয়ে আবার যুক্ত করেছি তারপরে সবকিছু স্বাভাবিক অবস্থায় ফিরে এসেছিল এবং আমার সমস্যা সমাধান হয়ে গেছে।

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