`
coconut_zhang
  • 浏览: 540704 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

MVC5应用程序项目结构

阅读更多

单从MVC的字面意思我们便能够注意到M-模型, View-视图, Controller-控制器,他们都各自存储在解决方案下的单独的文件夹中。除此之外还有很多有用的信息值得我们去探索,废话少说,首先我们来看一下MVC 5的项目结构。

通过上图,我们可以清晰地了解到MVC 5应用程序的项目结构,接下来我们来依次解释下他们各自的应用。

App_Data: 该文件夹主要是包含应用程序的本地存储, 它通常以文件形式(如Microsoft SQL Server数据库文件, XML文件等)包含数据存储。

App_Start: 该文件夹包含应用程序的配置逻辑文件, 具体包括BundleConfig.cs, FilterConfig.cs, RouteConfig.cs, Startup.Auth.cs

                 BundleConfig.cs: 注册所使用的捆绑的CSS 和 JS文件。

                 FilterConfig.cs: 注册外部/全局过滤器,这些过滤器可以被应用到每个Action和Controller中去.

                 RouteConfig.cs: 配置MVC应用程序的系统路由路径。

                 Startup.Auth.cs: 配置MVC应用程序的安全信息,包括Authentication和Authorization配置以及第三方Authentication Provider

Content: 该文件夹被推荐用于存储静态内容文件类似CSS 和 (图片)Images

Controllers:顾名思义,该文件夹用于存储所有的控制器且控制器必须以"Controller"结尾。

fonts: 该文件夹用于存储MVC应用程序可能用到的字体文件

Models: 该文件夹用于存储应用程序实体模型类, 实体类可以定义对象以及应用程序逻辑。

Scripts: 该文件夹默认存储ASP.NET Ajax Foundation files和Jquery.主要被用来存储应用程序所支持的脚本(JS)文件.

Views: 该文件夹主要用来存储MVC应用程序所使用的布局文件(.master), 视图文件(.aspx)以及视图用户控件文件(.ascx)

细心的读者还会注意到Global.asax, Startup.cs(MVC 5应用程序新增加的) 以及Web.config.

Gobal.asax:

(摘自MSDN)这里的Global.asax主要是web应用程序的全局设置文件,该文件包含响应 ASP.NET 或HTTP模块所引发的应用程序级别和会话级别事件的代码。Global.asax 文件驻留在 ASP.NET 应用程序的根目录中。运行时,分析 Global.asax 并将其编译到一个动态生成的 .NET Framework 类,该类是从HttpApplication基类派生的。配置 ASP.NET,以便自动拒绝对 Global.asax 文件的任何直接的 URL 请求;外部用户不能下载或查看其中的代码。Global.asax 文件是可选的。只在希望处理应用程序事件或会话事件时,才应创建它.

Web.config:

((摘自MSDN)Web.config文件是一个XML文本文件,它用来储存ASP.NETWeb 应用程序的配置信息(如最常用的设置ASP.NETWeb 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中。当你通过.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置。如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件。它可以提供除从父目录继承的配置信息以外的配置信息,也可以重写或修改父目录中定义的设置。
在运行时对Web.config文件的修改不需要重启服务就可以生效(注: 节例外)。当然Web.config文件是可以扩展的。你可以自定义新配置参数并编写配置节处理程序以对它们进行处理。

重点介绍下Startup.cs文件:

Startup.cs:

这个文件主要是提供给OWIN(Open Web Interface for .NEt)应用程序使用,OWIN的目的是为了解耦服务器应用程序。例如在ASP.NET Identity使用OWIN security, SignalR self hosting使用OWIN hosting等情况下, 我们的MVC应用程序都有使用到OWIN, 所以,他们都相应的会使用到startup.cs所定义的Startup class. 关于OWIN的应用这里不作详述,这里提到OWN主要是为了说明Startup.cs文件的使用.

好了,今天的文章就写到这里,内容不算多但是很有条理,结构清晰,希望给学习的朋友们一点启示吧!通过本章学习,朋友们对MVC应用程序的结构应该有了比较清晰的认识,下一章我们将介绍MVC应用程序开发的一些知识点(Tips and Tricks).

分享到:
评论

相关推荐

    MVC 5 第二章 MVC5应用程序项目结构

    通过上图,我们可以清晰地了解到MVC 5应用程序的项目结构,接下来我们来依次解释下他们各自的应用。 App_Data: 该文件夹主要是包含应用程序的本地存储, 它通常以文件形式(如Microsoft SQL Server数据库文件, XML文件...

    使用ASP.NET MVC创建应用程序(转发)

    在创建ASP.NET MVC应用程序时,我们通常按照以下步骤进行: **1. 创建ASP.NET MVC项目** - 在Visual Studio 2008中,选择"文件" > "新建项目",然后选择"ASP.NET MVC Web Application"模板。 - 输入项目名称,...

    Oxite MVC开源项目及项目结构说明

    **Oxite MVC开源项目及项目结构说明** Oxite是一个基于Microsoft ASP.NET MVC框架的开源博客引擎,由微软的员工开发,旨在提供一个学习和理解MVC设计模式的实例。这个项目对于开发者来说,是一个宝贵的资源,因为它...

    ASP.NET MVC5

    学习ASP.NET MVC5,开发者可以掌握Web应用程序的高级开发技巧,包括如何组织项目结构、如何处理用户输入、如何进行数据库操作、如何实现用户认证和授权,以及如何调试和测试代码。"J.T.ASP.NET MVC 5.pdf"这个文件很...

    ASP.NETMVC框架开发系列课程2_一个简单的ASP.NETMVC应用程序WebCast20080425Video

    本课程“ASP.NET MVC框架开发系列课程2_一个简单的ASP.NET MVC应用程序WebCast20080425Video”旨在深入讲解如何使用该框架来构建实际的Web应用程序。 首先,我们要理解MVC模式的基本概念。模型(Model)负责处理...

    ASP.NET MVC5 编程实战.pdf

    ASP.NET MVC5 是微软开发的一款用于构建Web应用程序的框架,它结合了模型-视图-控制器(MVC)设计模式、ASP.NET Web Forms组件以及Web API功能,为开发者提供了更灵活、可测试的Web开发解决方案。这本书《ASP.NET ...

    asp.net mvc2安装程序

    ASP.NET MVC2是一款基于微软.NET Framework的开源Web应用程序框架,设计用于构建可维护性和测试性的动态网站。这个框架是ASP.NET平台的一个扩展,它引入了模型-视图-控制器(Model-View-Controller, MVC)架构模式,...

    mvc5源代码

    ASP.NET MVC5 是微软公司开发的一款基于模型-视图-控制器(MVC)设计模式的Web应用程序框架,主要用于构建动态、数据驱动的Web应用。它集成了.NET Framework 和 C# 语言,提供了一种高效、可测试和灵活的方式来构建...

    asp.net mvc 5开发相关例子程序的打包

    ASP.NET MVC 5 是微软开发的一个用于构建动态网站的应用程序框架,它基于模型-视图-控制器(MVC)设计模式,提供了强大的开发工具和灵活的架构,使得开发者能够更高效地创建功能丰富的Web应用程序。这个打包文件包含...

    mvc5 music store

    MVC5 Music Store是一个基于ASP.NET MVC5框架构建的示例应用程序,旨在教育开发者如何在实际项目中运用MVC(Model-View-Controller)模式进行Web开发。这个项目涵盖了从数据库设计、模型创建、视图渲染到控制器逻辑...

    MVC架构在工程项目管理系统中的应用

    .NET Framework是由Microsoft开发的一组软件组件,用于构建各种类型的应用程序,包括Web应用和桌面应用。该框架的核心优势在于其能够简化复杂应用的开发流程,并且确保应用的安全性与稳定性。.NET Framework的关键...

    基于Java mvc的web应用程序项目数据库连接到登录和登录操作

    在这个项目中,"基于Java MVC的web应用程序项目数据库连接到登录和登录操作",我们将深入探讨如何整合JSP、Java、Servlet、DAO(数据访问对象)以及MySQL数据库来实现用户登录的功能。 1. **MVC架构**: MVC...

    MVC小程序 软件体系结构

    **MVC(Model-View-Controller)架构模式**是软件工程中的一种设计模式,尤其在Web应用开发领域中广泛使用。...开发者可以根据项目需求选择合适的工具和技术来实现MVC架构,以构建高效、可扩展的应用程序。

    asp.net mvc5 源码

    `ASP.NET MVC Test Framework`则提供了一些方便测试MVC应用程序的工具。 通过分析和学习这个源码包,开发者可以深入了解ASP.NET MVC5的内部工作方式,从而更好地优化自己的项目,提升开发效率和代码质量。

    ASP.NET MVC 5中文版

    ASP.NET MVC 5是微软开发的一个用于构建动态网站的开源框架,它结合了ASP.NET Web Forms和ASP.NET Web Pages的优点,引入了Model-View-Controller(MVC)设计模式,为开发者提供了更灵活、可测试的Web应用程序开发...

    JSP学习MVC模式小程序

    在Web开发领域,Model-View-Controller(MVC)模式是一种广泛应用的设计模式,它将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器(Controller)。本项目是基于JSP技术实现的一个小型书店应用,...

    wcf+mvc程序

    7. **调试和测试**:熟悉WCF服务的调试技巧,以及如何在MVC应用程序中测试WCF服务调用。 8. **性能优化**:探讨如何提高WCF服务的性能,例如通过缓存、批量处理和优化传输协议。 9. **部署**:了解如何部署WCF服务...

Global site tag (gtag.js) - Google Analytics