Thứ Tư, 9 tháng 11, 2016

[ASP.NET] MVC 2 Error : The type or namespace name 'Mvc' does not exist in the namespace 'System.Web'

lỗi :
Compiler Error Message: CS0234: The type or namespace name 'Mvc' does not exist in the namespace 'System.Web' (are you missing an assembly reference?)

Source Error:

Line 57: <add namespace="System.Web.Mvc" />
Line 58: <add namespace="System.Web.Mvc.Ajax" />
Line 59: <add namespace="System.Web.Mvc.Html" />
Line 60: <add namespace="System.Web.Routing" />
Line 61: <add namespace="System.Linq" />


Web đang chạy trên server cũ khi move qua server mới thì bị lỗi mặc dù cả 2 server đều setup đầy đủ MVC giống nhau. Nguyên do là server mới update bản vá security của window nên path của 1 số assemble thay đổi, code website khi build không set reference copy local=true thì 1 số trường hợp sẽ lỗi.

cách fix là thêm khai báo assembly trong web.config của site

<assemblies>
<add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
 </assemblies>
...
</system.web>

Không có nhận xét nào: