ASP.Net MVC项目部署的一般步骤

一、ASP.NET MVC简介:

Asp.net Mvc 是微软官方提供的Mvc模式编写Asp.net Web应用程序的一个框架,它由Castle的MonoRail而来.MVC (ModelViewController)把一个web应用分成了三个部分:model view和controller。ASP.NET MVC框架提供了一个可以代替asp.net web窗体的基于mvc的应用。

ASP.NET MVC概述·mvc的优点:   

1.通过把项目分成model view和controller,使得复杂项目更加容易维护。   

2.没有使用view state和服务器表单控件,可以更方便的控制应用程序的行为。   

3.应用程序通过controller来控制程序请求,可以提供丰富的url重写。   

4.对单元测试的支持更加出色。   

5.在团队开发模式下表现更出众。   

ASP.NET MVC概述·web窗体的优点:   

1.采用事件驱动模式来控制应用程序请求,由大量服务器控件支持   

2.采用页面控制机制,可以为单个页面添加事件处理函数。   

3.使用view state和服务器端页面,使管理页面状态信息更加轻松。   

4.对人数较少的想使用服务器端控件的开发团队,使用起来更加方便。   

5.开发起来比mvc模式要轻松简单一些。

二、实现ASP.NET MVC的具体步骤:

1、创建项目:我们首先创建一个主asp.net mvc项目,再创建一个子的项目和一个类库项目,如下图所示:



                                                               图一:项目基本架构

注: MvcAppMain为主WEB项目,AreasDemo为子项目,他们都是普通的ASP.NET MVC3项目,MVCControllers是一个类库项目。

2、添加测试的Controller和Action:

在子项目AreasDemo中添加一个Action,然后添加上相对应的视图,然后再在主项目MvcAppMain中添加一个HomeController和相应的Index.cshtml视图文件,为了测试再在主项目中添加一个Admin区域,添加完成后项目构架截图如下图所示:



                                                    图二:完整的项目架构图

注:当你在主项目里面添加一个Admin区域之后,默认会创建一个Areas文件夹,并且内部就是存放区域项目的界面。

3、在子项目中添加Areas Registration类文件:

为子项目AreasDemo添加一个Areas Registration类文件代码如下文所示(仅供参考):

public class AreasDemoRegistration : AreaRegistration//在主站点注册区域

{

public override string AreaName

    {

        get { return "AreasDemo"; }

    }

    public override void RegisterArea(AreaRegistrationContext context)

    {

        context.MapRoute(

            "AreasDemo_default",//路由名字,必须唯一

            "AreasDemo/{controller}/{action}/{id}",//路由规则

            new { action = "Index", id = UrlParameter.Optional }//默认值

        );

    }

}


这个类实现了AreaRegistration基类。我们注册区域路由就会在Global.asax的Application_Start事件方法中去执行注册到主站点的路由表中。Application_Start代码:

protected void Application_Start()

{

    AreaRegistration.RegisterAllAreas();//注册所有区域

    RegisterGlobalFilters(GlobalFilters.Filters);

    RegisterRoutes(RouteTable.Routes);

}


经过以上几步基础的架构算是搭建好了,我们下面开始部署项目。

4、项目的部署:

1)我们需要将子项目引用到主项目上,我们将主项目发布到一个磁盘文件夹中。

2)将子项目的AreasDemo的Views文件夹拷贝到主项目发布后的文件夹对应的Areas\AreasDemo文件夹下。其中AreasDemo是areaname,此文件夹需要我们自己手动创建。

3)看下子项目中是否有AreasDemo.dll动态链接库,如果有将其拷贝到主文件夹对应位置,最后再将主项目文件夹发布为IIS的一个网站。

4)演示效果:



                                                            图三:演示效果图

本文转自护卫神技术频道: http://tech.huweishen.com/gongju/1741.html

你可能感兴趣的:(.net)