跟小静学MVC3[01]--创建第一个MVC3项目

本文介绍了如何使用ProASP.NETMVC3Framework进行项目开发,从创建MVC3项目开始,了解MVC项目的基本结构和开发流程。包括创建MVC3项目、创建控制器、添加视图展示页面、使用ViewBag输出动态数据等步骤。

【前言】从今天开始,小静要学习Pro ASP.NET MVC3 Framework这本经典大作了,我是下载的电子版学习的。在这里只是用作学习的记录,便于以后查阅,也为了督促自己坚持下去。不用于任何商业用途。


要想掌握一种开发框架,光靠眼睛看是不够的,一定要动手使用,才能快速熟悉起来。现在就从创建MVC3项目开始,一步步了解MVC项目的基本结构和开发流程。

1. 创建第一个MVC项目:

  • 在安装好MVC3环境之后,首先我们新建一个MVC3项目(ASP.NET MVC3 Web Application):

Image[4]

  • 这里有三种项目模板:空模板,Internet应用程序和Intranet应用程序。我们选择第二种。
  • View引擎:在之前版本中使用的是ASPX引擎,MVC3引入了新的Razor引擎,它使用起来很方便又容易上手,所以一般建议使用Razor引擎。
  • Create a unit test project:选中之后会自动创建测试项目。

Image(1)[4]

  • 点击OK,可以看到项目创建成功,并自动生成了一些文件,项目解决方案如下所示:

Image(2)[4]

  • 运行项目,预览效果:

Image(3)[4]

2.创建第一个controller:

在webform开发方式里,url是和aspx文件所在的目录相对应的,但在MVC结构中,请求是通过controller进行处理的。在ASP.NET MVC中,controller一般是继承自System.Web.Mvc.Controller的类,通常放在controllers文件夹下。controller中每个public方法称作一个action方法,可以通过特定url来调用action方法。

  • 右键Controllers=>添加=>controller,名字要以Controller结尾。默认提供了三种controller模板,我们选择空模板。

Image(4)[4]

public class IndexController : Controller

    {

        public ActionResult Index()

        {

              return View();//返回与action同名的view结果

        }

    }

新建controller后,会默认添加一个名为Index的action,其返回类型为ActionResult。返回结果使用return View(),无参数表示返回与action同名的view,也可以传递字符串参数指定view名称。

3.添加View来展示页面

  • View查找路径:在添加view之前,我们先运行一下:

Image(5)[4]

这个错误不但提示了MVC找不到view,还展示了查找view的顺序。其中第一个index是url中的controller名字(去掉后缀);第二个index是action名称,我们没有指定action名称的时候默认是Index,当然这个也是可以在Global文件中自定义的。

  • 添加view:在Index这个action代码块内右键=>添加view,如下图点击OK。

image

我们可以看到自动添加了文件~/Views/Index/Index.cshtml,其路径格式为~/Views/Controller名称(去掉后缀)/action名称.cshtml, .cshtml后缀表示使用Razor引擎的c# view文件。如果使用的ASPX引擎,那么view文件后缀还是.aspx。

4. ViewBag输出动态数据

从controller向view传递数据可以使用ViewBag对象,它是Controller从父类继承来的属性,从对象浏览器查看如下:

public dynamic ViewBag { get; }

    Member of System.Web.Mvc . ControllerBase

Summary:

Gets the dynamic view data dictionary.

Returns:

The dynamic view data dictionary.

使用实例:

  • 首先在controller为ViewBag赋值:

public ActionResult Index()

        {

            int hour = DateTime.Now.Hour;

            ViewBag.hello = string.Format( "{0} ,欢迎来到大米返利网www.damifanli.com" , hour < 12 ? "早上好" : "下午好" );

             return View();

        }

  • 然后在view中读取ViewBag传递过来的数据:

@{

    ViewBag.Title = "首页";

}

<h2>@ViewBag.hello</h2>

  • 运行效果如下:

image

至此,我们创建了第一个MVC3项目,对于MVC3项目的基本结构也有了初步了解。

作者:丫头小静(Cathy)
出处:http://www.cnblogs.com/janes/
欢迎任何形式的转载,但请务必注明出处。


内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数优化器加速函数(MOA)和数优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备一定Python编程基础和优化算法基础知识的高校生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值