zoukankan      html  css  js  c++  java
  • Asp.Net MVC3 让你疯狂的5个理由

    最近突然发现MVC3其中自带好多内容我都还未灵活运用,真是可惜可惜,在上一篇中为了实现分页我零零散散的写了2个类 + view视图实现,但是看过MVC3自带的好东西,我对MVC3更加喜欢了。

    1、Razor视图引擎

           我不得不说,Razor视图引擎太酷了,我喜欢它那清爽的代码风格,它使用@符号表示代码块,下面的代码在Razor都是合法的:

    以下为引用的内容:

    @foreach (var item in Model) {  
        <b>@item.FullName</b> 


           2、新的助手

           助手一直是ASP.NET MVC和其它MVC框架相比不足的地方,ASP.NET MVC 3提供了新的助手,将会缩小这一领域和竞争对手的差距。

           Chart:帮助创建图表,非常好用。

           WebGrid:以网格形式呈现对象集合,包括分页和排序功能,可以输出为一个普通的HTML表格。

            WebImage:帮助创建图像,也包括基本的图像操作方法,如旋转,放大,缩小等。

           WebMail:用来发送电子邮件。

            下一代助手被称为“基于任务的助手”,本来包含在测试版中,但现在又看不到了,我希望在最终正式版中能见到它,因为它是那样的让我迷恋。

            Video:包含Video.Flash,Video.Silverlight和Video.MediaPlayer等方法,允许添加它们对应的HTML标签。

            Twitter:包含基本的twitter操作,如呈现一个特定用户的twitter流,或一个给定搜索的结果。

            ReCapcha:帮助使用reCAPTCHA服务。

            Gravatar:从Gravatar服务指定一个用户头像。

            Analytics:为不同的分析服务提供不同的方法,如GetGoogleHtml,GetStatCounterHtml或GetYahooHtml,提供需要的JavaScript代码。

            3、支持基于jQuery的Ajax

            在ASP.NET MVC 3中,Ajax.ActionLink,Ajax.RouteLink,Ajax.BeginForm和Ajax.BeginRouteForm将使用jQuery连接服务器,此外,它们不会使用内联JavaScript,它们会调用JavaScript文件中提供的函数,客户端验证也与此类似。

            4、新的依赖注入(Dependency Injection)支持带来更好的扩展性

            ASP.NET MVC 3将包含大量的扩展,几乎任何事情都可以使用依赖注入进行扩展。

            5、集成NuPack

            NuPack是微软新的打包系统,它完全和ASP.NET MVC 3集成到一起,在“解决方案资源管理器”的“引用”文件夹上点击右键,选择“添加包引用”,如下图所示。

    图 1 添加包引用

           接着会弹出NuPack界面,在这里你可以选择不同的库,如下图所示。

       

    图 2 NuPack添加包引用的界面

    ------------------------------------------------------------------------------------

    知识是引路灯,主要还是实践!

    分页的使用WebGrid:

    Control:

    public ActionResult WebGrid()
            {

        //取得数据
                MercuryDbExEntities db = new MercuryDbExEntities();
                var result = db.Users.ToList();

                ViewData.Model = result;
                return View();
            }

    View:

    @using Mvc3_Test.DataBase
    @model IEnumerable<Mvc3_Test.DataBase.Users>
    @{
        ViewBag.Title = "WebGrid";
        Layout = "~/Views/Shared/_Layout.cshtml";
    }

    <h2>WebGrid</h2>

    @{
        var grid = new WebGrid(source: Model,
        fieldNamePrefix: "grid_",
        defaultSort: "Id",
        canPage:true,
        canSort:true,
        ajaxUpdateContainerId:"DivGrid",
        pageFieldName:"paging",
        sortFieldName:"soutField",
        rowsPerPage:10);
    }
    <div id="DivGrid">
        @grid.GetHtml(
            columns:grid.Columns(
                grid.Column("Id","ID"),
                grid.Column("loginName","LoginName")
            )
        )
    </div>

    就这样一个分页完成了。

  • 相关阅读:
    五、Django之路由系统
    四、Django设置相关
    三、Django安装和流程
    二、Web框架实现
    Flask学习-Wsgiref库
    设计模式之设计模式六大原则(三大基本原则)【1】
    Linux之更改Nginx映射默认根目录
    顺序列表(栈/队列等)ADT[C++]
    [C++]数组与指针(纯代码-复习用)
    [C++]指针与多级指针(图解)
  • 原文地址:https://www.cnblogs.com/hedywqy/p/2103344.html
Copyright © 2011-2022 走看看