ASP.NET MVC中两个配置文件的作用是什么

ASP.NET MVC中两个配置文件的作用是什么

小编给大家分享一下ASP.NETMVC中两个配置文件的作用是什么,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

前言

在新建完一个MVC项目之后,你会发现整个整个项目结构中存在有两个web.config文件,如下图所示:

这两个配置文件,一个位于项目的根目录下面,一个位于Views文件夹下面,这两个配置文件有什么不同呢?

一、根目录下面的配置文件

跟目录下面的web.config配置文件代码如下:

<?xmlversion="1.0"encoding="utf-8"?><!--有关如何配置ASP.NET应用程序的详细信息,请访问https://go.microsoft.com/fwlink/?LinkId=301880--><configuration><appSettings><addkey="webpages:Version"value="3.0.0.0"/><addkey="webpages:Enabled"value="false"/><addkey="ClientValidationEnabled"value="true"/><addkey="UnobtrusiveJavaScriptEnabled"value="true"/></appSettings><system.web><compilationdebug="true"targetFramework="4.6.1"/><httpRuntimetargetFramework="4.6.1"/></system.web><runtime><assemblyBindingxmlns="urn:schemas-microsoft-com:asm.v1"><dependentAssembly><assemblyIdentityname="Antlr3.Runtime"publicKeyToken="eb42632606e9261f"/><bindingRedirectoldVersion="0.0.0.0-3.5.0.2"newVersion="3.5.0.2"/></dependentAssembly><dependentAssembly><assemblyIdentityname="System.Diagnostics.DiagnosticSource"publicKeyToken="cc7b13ffcd2ddd51"/><bindingRedirectoldVersion="0.0.0.0-4.0.2.1"newVersion="4.0.2.1"/></dependentAssembly><dependentAssembly><assemblyIdentityname="Newtonsoft.Json"publicKeyToken="30ad4fe6b2a6aeed"/><bindingRedirectoldVersion="0.0.0.0-11.0.0.0"newVersion="11.0.0.0"/></dependentAssembly><dependentAssembly><assemblyIdentityname="System.Web.Optimization"publicKeyToken="31bf3856ad364e35"/><bindingRedirectoldVersion="1.0.0.0-1.1.0.0"newVersion="1.1.0.0"/></dependentAssembly><dependentAssembly><assemblyIdentityname="WebGrease"publicKeyToken="31bf3856ad364e35"/><bindingRedirectoldVersion="1.0.0.0-1.6.5135.21930"newVersion="1.6.5135.21930"/></dependentAssembly><dependentAssembly><assemblyIdentityname="System.Web.Helpers"publicKeyToken="31bf3856ad364e35"/><bindingRedirectoldVersion="1.0.0.0-3.0.0.0"newVersion="3.0.0.0"/></dependentAssembly><dependentAssembly><assemblyIdentityname="System.Web.WebPages"publicKeyToken="31bf3856ad364e35"/><bindingRedirectoldVersion="1.0.0.0-3.0.0.0"newVersion="3.0.0.0"/></dependentAssembly><dependentAssembly><assemblyIdentityname="System.Web.Mvc"publicKeyToken="31bf3856ad364e35"/><bindingRedirectoldVersion="1.0.0.0-5.2.4.0"newVersion="5.2.4.0"/></dependentAssembly></assemblyBinding></runtime><system.webServer><modules><removename="TelemetryCorrelationHttpModule"/><addname="TelemetryCorrelationHttpModule"type="Microsoft.AspNet.TelemetryCorrelation.TelemetryCorrelationHttpModule,Microsoft.AspNet.TelemetryCorrelation"preCondition="integratedMode,managedHandler"/></modules></system.webServer><system.codedom><compilers><compilerlanguage="c#;cs;csharp"extension=".cs"type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider,Microsoft.CodeDom.Providers.DotNetCompilerPlatform,Version=2.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"warningLevel="4"compilerOptions="/langversion:default/nowarn:1659;1699;1701"/><compilerlanguage="vb;vbs;visualbasic;vbscript"extension=".vb"type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider,Microsoft.CodeDom.Providers.DotNetCompilerPlatform,Version=2.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35"warningLevel="4"compilerOptions="/langversion:default/nowarn:41008/define:_MYTYPE=\"Web\"/optionInfer+"/></compilers></system.codedom></configuration>

这个配置文件主要是用来配置数据库连接字符串、日志输出路径等信息的,比如配置数据库连接字符串

二、Views文件夹下面的配置文件

Views文件夹下面的配置文件主要是用来引入一些cshtml页面中的命名空间

在上一篇文章中,我们如果要再cshtml视图页面中使用Student实体类,需要首先在页面中引入Student的命名空间:

如果cshtml页面都需要使用到Student类,那么每个页面都需要先引入Student类的命名空间才可以使用,这样会有很多重复的工作,可以把Student类的命名空间添加到Views文件夹下的配置文件中,这样就不需要每个页面都引入Student类的命名空间了

然后把ViewDataDemo对应的Index视图修改如下:

@*引入Student的命名空间*@@*@usingMVCStudyDemo.Models;去掉引入Student命名空间,在web.config文件里面引入*@@{ViewBag.Title="Index";//这里使用的是Razor语法,写的是后台C#代码//ViewData的Value值是Object类型的,需要进行类型转换//常规写法是先在这里进行类型转换varlist=ViewData["Data"]asList<Student>;}<h3>通过ViewData向View传递数据</h3><divclass="jumbotron"><div><div>1、传递字符串other:@ViewData["Other"];</div><div>2、传递字符串name:@ViewData["name"];</div><div>3、传递字符串age:@ViewData["age"];</div><div>4、传递集合方式一@foreach(variteminlist){<div>ID:@item.IDName:@item.NameAge:@item.AgeSex:@item.SexEmail:@item.Email</div>}</div><div>5、传递集合方式二@foreach(variteminViewData["Data"]asList<Student>){<div>ID:@item.IDName:@item.NameAge:@item.AgeSex:@item.SexEmail:@item.Email</div>}</div></div></div>

注意:在Index视图里面去掉命名空间以后,Student实体类会标红,不影响程序。

重新生成程序,然后运行:

看完了这篇文章,相信你对“ASP.NETMVC中两个配置文件的作用是什么”有了一定的了解,如果想了解更多相关知识,欢迎关注恰卡编程网行业资讯频道,感谢各位的阅读!

发布于 2022-03-18 22:51:10
收藏
分享
海报
0 条评论
27
上一篇:Java中二叉树与N叉树的示例分析 下一篇:Unity如何实现炸弹人游戏
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码