内置MVC3解决方案进展顺利,但浏览器出现错误:
编译器错误消息:CS0234:类型或名称空间名称’Html’在名称空间’System.Web.Mvc’中不存在(您是否缺少程序集引用?)
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和其他人呢?为什么会出现错误?
NuGet
MVC3
System.Web.Mvc.Ajax
System.Web.Mvc.Html
在“引用”文件夹中,我具有System.Web.Mvc
Runtime version: v4.0.30319,
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 System.Web.Mvc命名空间
文件packages.config:
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>
清理解决方案,然后将这些文件的属性设置为Copy Local = True。
Copy Local = True
将“复制本地”属性设置为True或False
在解决方案资源管理器中,单击“显示所有文件”按钮以显示“引用”节点。