มุมมองมีดโกนที่ขว้างปา“ ชื่อ 'รุ่น' ไม่มีอยู่ในบริบทปัจจุบัน”


201

หลังจากการเปลี่ยนสถานะใหม่อย่างมีนัยสำคัญในแอปพลิเคชัน MVC 4 ของฉันและมีดโกนแสดงข้อผิดพลาดนี้ขณะทำการดีบัก Views:

ชื่อ 'รุ่น' ไม่มีอยู่ในบริบทปัจจุบัน

นี่คือบรรทัดของรหัสที่ละเมิด:

@model ICollection<DataSourceByActive>

ฉันรู้ว่าการใช้งาน@modelถูกต้อง

ทำไมสิ่งนี้จึงเกิดขึ้น ฉันจะแก้ไขได้อย่างไร


กุญแจสำคัญคือ "ในบริบทปัจจุบัน" บางวงเล็บไม่เปิดหรือปิด ... ดังนั้นคำสั่งของคุณไม่ได้อยู่ในบริบทที่คุณคิดว่าเป็น
Floris

1
คุณสามารถเพิ่มโค้ดคอนโทรลเลอร์ของคุณพร้อมกับมาร์กอัพตัวอย่างบางส่วนของสิ่งที่คุณพยายามทำได้หรือไม่?
scniro

คำตอบ:


245

ฉันคิดว่าคุณได้ทำผิดพลาดไฟล์ web.config ซึ่งอาศัยอยู่ในโฟลเดอร์ Views

สร้างโครงการใหม่ที่กำหนดเป้าหมายเป็น. NET Framework เดียวกันและคัดลอกไฟล์ Views / web.config ที่ด้านบนของโครงการในโครงการปัจจุบันของคุณ สิ่งนี้จะแก้ไขปัญหาของคุณ

นอกจากนี้ดังที่ Dudeman3000 แสดงความคิดเห็นหากคุณมีพื้นที่ในโครงการ MVC ของคุณทุกคนก็มีViews\web.configไฟล์เช่นกัน


20
จำไว้ว่าถ้าคุณมีพื้นที่ในโครงการ MVC ของคุณพวกเขาทั้งหมดก็มีไฟล์ Views \ web.config ด้วยเช่นกัน!
Dudeman3000

6
web.config ของฉันผิดปกติในไดเรกทอรี views ไม่เป็นไร แต่ web.config ของโครงการมีหน้าเว็บเวอร์ชัน 2.0.0 การตรวจจับข้อผิดพลาดที่ผิดพลาดหายไปเมื่อฉันทำมัน 3.0.0
William T. Mallard

43
This will fix your problem.มันไม่ได้
Timwi

2
@AnirudhaGupta หนึ่งในคำถาม
Timwi

1
ฉันคัดลอกไฟล์ web.config ที่ถูกต้องลงในโฟลเดอร์ Views ของฉัน แต่ไม่ได้รวมอยู่ในโครงการ
Wildcat Matt

104

ตรวจสอบให้แน่ใจว่าคุณมีสิ่งต่อไปนี้ทั้งในไซต์Web.configและไดเรกทอรีมุมมองของคุณWeb.configในappSettingsส่วน

<add key="webpages:Version" value="2.0.0.0" />

สำหรับ MVC5 ใช้:

<add key="webpages:Version" value="3.0.0.0" />

(และมันมีอยู่ในWeb.configไฟล์หลักเท่านั้น)


14
ขอบคุณ! สำหรับ MVC5 3.0.0.0หมายเลขรุ่นจะต้องมีการ (และจะมีอยู่ในไฟล์ Web.config หลักเท่านั้น)
xec

นี่คือคำตอบที่ถูกต้องฉันจะบอกว่าฉันพยายามทุกที่เพื่อเปลี่ยนรุ่นไม่ แต่ในตอนท้ายนี่เป็นสิ่งเดียวที่ป้องกันไม่ให้มีดโกน intellisence ในการทำงาน
Shivam Chopra

6
สิ่งนี้ใช้ได้สำหรับฉัน ฉันต้องเริ่มต้น Visual Studio ใหม่หลังจากการเปลี่ยนแปลงนี้เพื่อให้ทุกอย่างทำงาน
Ravvy

1
ฉันมีปัญหานี้กับ MVC 5 ปัญหาคือการที่สำคัญมีอยู่ แต่ถูกกำหนดเป้าหมายรุ่นแทน2.0.0.0 3.0.0.0การเปลี่ยนที่แก้ไขปัญหา ขอบคุณ!
vaindil

ฉันใช้สิ่งนี้และใช้งานได้ แต่ฉันเพิ่มลงใน web.config ของ views เท่านั้น Intellisense เกิดขึ้นทันทีหลังจากรีสตาร์ท VS
Matt

48

นี่คือสิ่งที่ฉันทำ:

  1. ปิด Visual Studio
  2. ลบไฟล์ SUO
  3. เริ่ม Visual Studio ใหม่

ไฟล์. suo เป็นไฟล์ที่ซ่อนอยู่ในโฟลเดอร์เดียวกันกับไฟล์โซลูชัน. svn และมีตัวเลือกผู้ใช้ Visual Studio


ใช่ไม่มีweb.configไฟล์สำหรับASP.NET Coreแอปดังนั้นนี่ใช้งานได้สำหรับฉัน (เพิ่มส่วนขยายบางอย่างเพื่อปรับปรุงการใช้งานภายในระบบ)
VMAtm

2
ฉันไม่จำเป็นต้องลบไฟล์ SUO ด้วยซ้ำ ฉันเพิ่งปิดและเปิด Visual Studio
จิม S

Visual Studio 2019: ไม่มีไฟล์ suo การลบ.vsโฟลเดอร์ช่วย
HavtěpánHavránek

ขอบคุณ .. สิ่งนี้ทำเพื่อฉัน แอป. net Core 2.0 mvc
roblem

2
Visual Studio 2019 ที่นี่ปิดและเปิดใหม่อีกครั้งสำหรับฉัน ขอบคุณ
JordanGW

26

ฉันมีปัญหาเดียวกันฉันสร้างโครงการใหม่และคัดลอกไฟล์ web.config ตามที่แนะนำในคำตอบโดย Gupta แต่นั่นไม่ได้แก้ไขสิ่งต่าง ๆ สำหรับฉัน ฉันตรวจสอบคำตอบโดย Alex และ Liam ฉันคิดว่าบรรทัดนี้ต้องถูกคัดลอกมาจาก web.config ใหม่ แต่ดูเหมือนว่าโครงการใหม่นั้นไม่มีบรรทัดนี้ (MVC5):

<add key="webpages:Version" value="3.0.0.0" />

การเพิ่มบรรทัดลงในไฟล์ views / web.config ช่วยแก้ไขปัญหาให้ฉันได้


สิ่งนี้จะเกิดขึ้นหากคุณอัพเกรดจาก asp.net เวอร์ชั่น 4.0.0 เป็น 4.5.1 ในกรณีของฉัน web.config หลักของฉันแสดงเว็บเพจ: เวอร์ชัน = 2.0.0.0 แต่ควรเป็น 3.0.0.0 การอัพเดตค่านี้แก้ไขปัญหา
Veysel Ozdemir

15

การเปลี่ยนบรรทัดต่อไปนี้ในโฟลเดอร์ web.config of view แก้ไขข้อผิดพลาดเดียวกัน

จาก

 <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.2.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

ถึง

<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

1
สิ่งนี้ได้ผลกับฉันด้วย ฉันได้อัพเกรดมีดโกนเพื่อรองรับ C # 6 และ MVC จะต้องอัปเดตด้วย ตรวจสอบSystem.Web.Mvcการอ้างอิงแอสเซมบลีของคุณเพื่อยืนยันเวอร์ชันหลักที่คุณต้องการ
James Wilkins

ผมมีปัญหาเหมือนกัน. แก้ไขชุด MVC มีดโกนและส่วนประกอบอื่น ๆ ทั้งหมดใน web.config เป็น x.0.0.0 มีสิ่งที่ใช้งานได้สำหรับฉันอีกครั้ง
mamashare

@JamesWilkins Nice ทำงานให้ฉันได้ มีเพียงสิ่งเดียวเท่านั้นให้ลบไฟล์. suo โครงการของคุณหลังจากนั้นและรีสตาร์ท VS

จับดี! ฉันกำลังเผชิญปัญหานี้หลังจากที่ฉันอัพเกรดจาก. NET Framework 4.0 เป็น 4.6 และเห็นได้ชัดว่าชี้ไปที่เวอร์ชันแอสเซมบลีที่ผิด
พ.ค.

10

ในกรณีของฉันฉันเพิ่งอัปเดตจาก MVC 4 เป็น MVC 5 ซึ่งขันการตั้งค่าเว็บค่อนข้างแย่ บทความนี้ช่วยได้อย่างมาก

http://www.asp.net/mvc/overview/releases/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web- API-2

บรรทัดล่างคือคุณต้องตรวจสอบการอ้างอิงหมายเลขรุ่นทั้งหมดของคุณใน web.config และ Views / web.config ของคุณเพื่อให้แน่ใจว่าพวกเขากำลังอ้างอิงรุ่นอัพเกรดที่ถูกต้องที่เกี่ยวข้องกับ MVC 5


1
หากคุณอัพเกรดจาก MVC 4 เป็น MVC 5 นี่คือคำตอบสำหรับตรวจสอบ ช่วยระบุปัญหารุ่นแก้ไขปัญหาของฉันและมีความเสี่ยงเพียงเล็กน้อยที่จะทำลายสิ่งใด
R. Schreurs

10

เปลี่ยนเป็น @Model จาก @model ทำหน้าที่แทนฉัน

@model แสดงถึงประเภทวัตถุ View Model @Model หมายถึงวัตถุ View Model


1
ฉันหวังว่าฉันจะหยุดลืมสิ่งนี้! ขอบคุณที่เตือนฉัน!
Mike

1
จำนวนครั้งที่ฉันต้องค้นหาปัญหานี้น่าผิดหวัง .. แต่ฉันดีใจที่มันเป็นวิธีแก้ไขที่ง่าย!
Brendan Sluke

7

ฉันพบวิธีแก้ปัญหาแล้ว หากคุณต้องการอัปเดตเวอร์ชันมีดโกนหรือ mvc 4 เป็น 5 ให้เปลี่ยนบางบรรทัด

รหัสเก่าใน Views / web.config

<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
  <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>

แทนที่ด้วย

<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>

sectionGroup ต้องเปลี่ยนด้วย


6

ในกรณีของฉันรหัสต่อไปนี้พบว่ามีประโยชน์ วางรหัสด้านล่างในไฟล์ Web.config ใต้โฟลเดอร์ Views

<configSections>

  <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
   <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
   <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  </sectionGroup>

</configSections>

เมื่ออัปเดตรหัสแล้วตรวจสอบให้แน่ใจว่าได้ทำความสะอาดและสร้างโซลูชันใหม่ ฉันหวังว่านี่จะช่วยคุณได้!


5

ไม่มีคำตอบที่มีอยู่ทำงานให้กับผม แต่ผมพบว่าสิ่งที่ไม่ทำงานสำหรับฉันโดยการเปรียบเทียบ.csprojไฟล์ของโครงการที่แตกต่างกัน การแก้ไขด้วยตนเองต่อไปนี้ไปยัง.csprojไฟล์ XML แก้ไขปัญหา Razor-Intellisense ให้ฉันบางทีนี่อาจช่วยคนอื่นที่ลองใช้คำตอบอื่น ๆ ทั้งหมดโดยไม่มีประโยชน์ กุญแจสำคัญคือการลบอินสแตนซ์ของ<Private>False</Private>ใน<Reference>:

<ItemGroup>
  <Reference Include="Foo">
    <HintPath>path\to\Foo</HintPath>
    <!-- <Private>False</Private> -->
  </Reference>
  <Reference Include="Bar">
    <HintPath>path\to\Bar</HintPath>
    <!-- <Private>True</Private> -->
  </Reference>
</ItemGroup>

ฉันไม่รู้ว่าสิ่งเหล่านั้นไปถึงที่นั่นหรือทำสิ่งที่พวกเขาอาจจะบางคนฉลาดกว่าฉันสามารถเพิ่มข้อมูลที่ ในที่สุดฉันก็มีความสุขที่จะแก้ปัญหานี้


ขอบคุณสำหรับคำแนะนำสิ่งนี้ใช้ได้กับฉันด้วยเหตุผลใดก็ตาม
Scherling

ทำงานให้ฉันด้วย
อเล็กซ์

นั่นเป็นตัวเลือกเดียวที่ทำงานในกรณีของฉัน ฉันเปลี่ยนโครงการ vs2010 เป็นปี 2019 และทำงานได้อย่างมีเสน่ห์ หลังจากบันทึก csproj ฉันพยายามที่จะไม่แสดงความคิดเห็นแท็กเช่นไฟล์ต้นฉบับและมันยังคงทำงาน ...
jefissu

3

ด้วยเหตุผลบางประการ web.config ของฉันมี0.0.0.0ในแอตทริบิวต์ oldVersion:

<runtime>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
        <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
      </dependentAssembly>
</runtime>

เปลี่ยนเป็น1.0.0.0เป็นวิธีแก้ปัญหา:

  <dependentAssembly>
    <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35"/>
    <bindingRedirect oldVersion="1.0.0.0-5.2.3.0" newVersion="5.2.3.0"/>
  </dependentAssembly>

3

ฉันใช้ MVC4 กับ Visual Studio 2019 และปรากฏว่า VS 2019 ไม่รองรับ MVC 4 นอกกรอบ คุณต้องติดตั้งสิ่งนี้

ขั้นตอน:

  • เปิดโปรแกรมติดตั้ง Visual Studio (ค้นหาโปรแกรมติดตั้ง Visual Studio ใน windows)
  • คลิกแต่ละองค์ประกอบ
  • เขียน "mvc" ในช่องค้นหา
  • ตรวจสอบกล่อง mvc4
  • คลิก "แก้ไข" ที่ด้านล่างขวา

หมายเหตุ: จำเป็นต้องปิดสตูดิโอภาพ

ป้อนคำอธิบายรูปภาพที่นี่


2

ในกรณีของฉันปัญหาคือหลังจากอัพเกรดโครงการจาก MVC 4 เป็น MVC 5 ฉันพลาดการเปลี่ยนแปลงเวอร์ชันใน Views / web.config:

    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">            

มันยังมีเวอร์ชั่น 2.0.0.0 รุ่นเก่าอยู่ หลังจากเปลี่ยนเวอร์ชั่นเป็น 3.0.0.0 ทุกอย่างเริ่มทำงานได้อย่างถูกต้อง

นอกจากนี้เนื่องจากปัญหานี้ Visual Studio 2015 Community Edition จะเริ่มทุบตี CPU (การใช้งาน 30-40% ที่ไม่ได้ใช้งาน) ทุกครั้งที่ฉันเปิดไฟล์. cshhtml


2

ฉันมีปัญหาเดียวกันเมื่อปรับใช้กับ Azure App Service

ในกรณีของฉันเป็นเพราะ ~ / Views / Web.config ไม่รวมอยู่ในโครงการ

มันทำงานใน IIS Express แต่เมื่อฉันปรับใช้กับสีฟ้าฉันได้รับข้อผิดพลาดเดียวกัน โดยไม่รวมอยู่ในไฟล์. csproj จะไม่ถูกปรับใช้

วิธีแก้ไขคือเพื่อให้มั่นใจว่า ~ / Views / Web.config รวมอยู่ในโครงการ

หากคุณไปที่โซลูชัน Explorer และคลิกที่ไอคอน "แสดงไฟล์ทั้งหมด" จากนั้นเปิดมุมมองคุณอาจเห็นไฟล์ Web.config ที่ไม่รวมอยู่ใต้นั้น

เพิ่มในเผยแพร่อีกครั้งและบ๊อบลุงของคุณ


1

สำหรับฉันปัญหาคือเวอร์ชัน. NET ที่ขัดแย้งกันในหนึ่งในห้องสมุดที่ฉันเพิ่งนำเข้า ไลบรารีที่ฉันนำเข้าถูกรวบรวมสำหรับ 4.5.2 และไซต์ ASP.NET MVC ที่ฉันนำเข้าไว้ในเป้าหมาย 4.5 หลังจากคอมไพล์ recompiling แล้วว่า lib สำหรับ 4.5 เว็บไซต์จะคอมไพล์

นอกจากนี้ยังไม่มีข้อผิดพลาดในการรวบรวม แต่ปัญหาได้รับการรายงานว่าเป็น "คำเตือน" ดังนั้นโปรดอ่านคำเตือนทั้งหมดหากมี


1

เพื่อแก้ไขปัญหานี้ฉันแน่ใจว่าฉันได้อัพเกรดเป็น MVC รุ่นใหม่ล่าสุดโดยใช้ NuGet และ Package Manager Console

ติดตั้งแพ็คเกจ Microsoft.AspNet.Mvc -Version 5.2.4

จากนั้นอัพเกรดเป็นมีดโกนรุ่นล่าสุด

ติดตั้งแพ็คเกจ Microsoft.AspNet.Razor -Version 3.2.4

จากนั้นฉันเปลี่ยนไฟล์ web.config ทั้งหมดเพื่อให้สอดคล้องกับการเปลี่ยนแปลง ตามที่คุณจะเห็นด้านล่าง:

ในไฟล์ web.config หลักตรวจสอบให้แน่ใจว่าหน้าเว็บ: เวอร์ชันถูกต้อง นี่คือที่ที่สามารถพบได้ (ละเว้นคีย์อื่น ๆ ):

<configuration>
 <appSettings>
   <add key="webpages:Version" value="3.0.0.0"/>
   <add key="ClientValidationEnabled" value="true"/>
   <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
 </appSettings>
</configuration>

จากนั้นค้นหารุ่นอื่น ๆ ที่ระบุไว้ในแอสเซมบลีตรวจสอบรุ่นของแอสเซมบลีกับรุ่นของไลบรารีที่ระบุไว้ในการอ้างอิงโครงการของคุณ คุณอาจไม่ต้องการสิ่งเหล่านี้ทั้งหมด

<system.web>
    <compilation debug="true" targetFramework="4.6">
        <assemblies>
            <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add assembly="System.Web.Helpers, Version=3.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=5.2.4.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add assembly="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        </assemblies>
    </compilation>
</system.web>

Runtime assemblyBinding ควรแสดง "newversion" ด้วยดูที่ NewVersion 5.2.4.0 แต่ยังตรวจสอบทุกรุ่นอื่น ๆ

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
       <dependentAssembly>
        <assemblyIdentity name="System.Web.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
        <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35"/>
        <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0"/>
      </dependentAssembly>
      <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="1.0.0.0-5.2.4.0" newVersion="5.2.4.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

จากนั้นในส่วน Views.Config ตรวจสอบให้แน่ใจว่ามีดโกนเป็นรุ่นที่ถูกต้อง:

<configuration>
  <configSections>
    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
      <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
      <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    </sectionGroup>
  </configSections>
<configuration>

และ Lastlt มีส่วนหน้าของ Views Web.Config

    <pages
    validateRequest="false"
    pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=5.2.4.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
    pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=5.2.4.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
    userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=5.2.4.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
      <controls>
        <add assembly="System.Web.Mvc, Version=5.2.4.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
      </controls>
    </pages>

1

หากคุณประสบปัญหานี้โดยไม่มีการเปลี่ยนแปลงใด ๆ ในโครงการของคุณเช่นเดียวกับฉันคุณต้องเปลี่ยนเว็บของคุณกำหนดค่าที่วางไว้ในดูโฟลเดอร์ เพียงแค่เขียนบรรทัดใหม่โดยใส่หรือลบบรรทัดว่าง จากนั้นบันทึกเว็บของคุณกำหนดค่าและสร้างใหม่ ปัญหาของฉันแก้ไขได้ด้วยวิธีนี้


0

ฉันพยายามเพิ่มมุมมองที่อยู่นอกโฟลเดอร์ "มุมมอง" ของฉัน (เพียงเพื่อจัดระเบียบรหัสของฉันแตกต่างกันฉันเดา) เมื่อฉันมีปัญหานี้ การสร้างมุมมองภายใน Views (ตามแบบแผน) แก้ไขได้


0

ในกรณีของฉันฉันหายไป @ ที่จุดเริ่มต้นของ foreach

    @foreach (var item in Model)
    {
        <tr class="clickable-row">
            <td class="clickable-field">
                @Html.DisplayFor(modelItem => item.Label)
            </td>
            <td class="clickable-field hidden-xs">
                @Html.DisplayFor(modelItem => item.Value)
            </td>
        </tr>
    }

นี้เป็นสิ่งสำคัญ; ไม่ทราบสาเหตุที่คุณถูกลดระดับลง
FlyingV

1
เพราะมันไม่มีอะไรเกี่ยวข้องกับคำถามดั้งเดิม
Ryan

0

ในกรณีของฉันฉันลบไฟล์ web.config จากโฟลเดอร์ Views โดยไม่ได้ตั้งใจ ฉันเพิ่มมันกลับมาและมันก็โอเค



โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.