MVC3.0搜索实例

今天是举行大阅兵的日子,为庆祝抗日战争胜利70周年。为祖国的繁荣昌盛感到无比的自豪和骄傲,祖国万岁。

在msdn上看了大半天的的 getting-started-with-aspnet-mvc3。感觉官网的教程就是不一样。图文并茂,精简,且可以和作者探讨问题在评论那,看到Examining the Edit       Methods and Edit View (C#)这里的时候有了些新的实践。决定结合那个mvc demo继续练习。在@Recluse_Xpy的帮助下实现了我要的扩展搜索功能。和他聊了下感觉自己进     步空间很是广阔。要有学习和自我学习的意识,怕的是比自己优秀的人更加努力,你没有不努力的理由。感谢他热心的远程调试。共勉。

第一步、 在控制器中写了个搜索的方法,主要是显示学生的信息,通过姓名和班级实现数据的,筛选控制器代码如下:

public ViewResult SearchIndex(string classNames, string str)
        {
            var list = new List<string>();
            var csname_query = from c in db.scClassList
                               orderby c.className
                               select c.className;

            list.AddRange(csname_query.Distinct());
            ViewBag.classNames = new SelectList(list);

            var studentlist = db.stuList.Include(d => d.scClass).ToList();

            if (!String.IsNullOrEmpty(str))
            {
                studentlist = studentlist.Where(s => s.stuName.Contains(str)).ToList();

            }
            if (String.IsNullOrEmpty(classNames))
            {

                return View(studentlist);

            }
            else
            {
                return View(studentlist.Where(s => s.scClass.className == classNames));

            }

        }

  第二部、生成对应的视图、并做相应的修改见代码:

@model IEnumerable<Mvc3Demo.Models.Student>
@{
    ViewBag.Title = "SearchIndex";
}
<h2>
    SearchIndex</h2>
<p>
    @Html.ActionLink("Create New", "Create")
    @using (Html.BeginForm("SearchIndex", "StudentManager", FormMethod.Get))
    {
        <p>
            ClassName:@Html.DropDownList("classNames", "All")
            Name:@Html.TextBox("str")<br />
            <input type="submit" value="Filter" />
        </p>
    }
</p>
<h2>
    SearchIndex</h2>
<table>
    <tr>
        <th>
            stuName
        </th>
        <th>
            stuSex
        </th>
        <th>
            age
        </th>
        <th>
            scClassID
        </th>
        <th>
        </th>
    </tr>
    @foreach (var item in Model)
    {
        <tr>
            <td>
                @Html.DisplayFor(modelItem => item.stuName)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.stuSex)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.age)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.scClass.className)
            </td>
            <td>
                @Html.ActionLink("Edit", "Edit", new { id = item.stuid }) |
                @Html.ActionLink("Details", "Details", new { id = item.stuid }) |
                @Html.ActionLink("Delete", "Delete", new { id = item.stuid })
            </td>
        </tr>
    }
</table>

  效果图如下:通过输入Name文本框对应的值搜索对应的学生,通过班级可以查出对应的学生:【列表=》名称搜索结果=》班级搜索结果】

       

时间: 2024-11-08 23:07:35

MVC3.0搜索实例的相关文章

ElasticSearch搜索实例含高亮显示及搜索的特殊字符过滤

应用说明见代码注解. 1.简单搜索实例展示: public void search() throws IOException {        // 自定义集群结点名称        String clusterName = "elasticsearch_pudongping"; // 获取客户端        Client client = ESClient.initClient(clusterName); // 创建查询索引,参数productindex表示要查询的索引库为prod

Asp.Net MVC3.0网站统计登录认证的在线人数

Asp.Net MVC3.0网站统计登录认证的在线人数 前言 对于一个网站来说,统计在线人数是一个很重要的工作.平时也发现很多的网站论坛等都有在线人数的显示.对于一个网站如果在线人数很多,用户看到了这么个数字也是很了不起的事情.由于之前对于这个知识点只是知道,并没有去了解过,这两天偶然的机会又看到了,于是自己整理了一个简单的版本,也方便让大家来给提提意见. 本文主要通过Application和Session全局来统计在线人数,暂时只统计登录验证过的.实现的大致方案如下: 1.在全局应用程序启动的

Omnet++ 4.0 入门实例教程

http://blog.sina.com.cn/s/blog_8a2bb17d01018npf.html 在网上找到的一个讲解omnet++的实例, 是4.0下面实现的. 我在4.2上试了试,可以用.照着做就能完成,有些小地方不同而已 Omnet++ 4.0 入门实例教程根据http://omnest.com/webdemo/ide 上的实例,自己动手做了做.新版本的4.0 跟它视频上的版本有些差别,配图说明一下我的操作过程,供大家一起学习.现在开始.首先,开发环境选择simulation 的视

分享在MVC3.0中使用jQuery DataTable 插件

前不久在网络上看见一个很不错的jQuery的DataTable表格插件.后来发现在MVC中使用该插件的文章并不多.本文将介绍在MVC3.0如何使用该插件.在介绍该插件之前先简单介绍一下,推荐该插件的原因.在项目中我使用jqgrid比较多.但是发现当进行样式调整时jqgrid的样式常常会让美工头疼.而datatable插件却是一个轻量级的jQuery插件.当我通过浏览器查看该js插件rander后的源码.发现只是一个简单的html table,非常简洁.那么在没有特殊要求的情况下使用这个插件,开发

Yii2.0论坛实例教程

Yii2.0现在已经出来Beta了,Yii2.0总的来说和Yii1.x还是相差挺大的.现在的教程大部分都还是1.x的,所以这论坛就作为Yii2.0的一个入门实例吧.我也会尽量把Yii2.0的各个新特性以及开发中的技巧一一列出来.如果哪位有兴趣可以一起交流一起来完成.功能列表:http://www.yiifans.com/forum.php?mod=viewthread&tid=68Git地址:https://github.com/yiifans/yiiforum另外,一般情况下会在每天早上提交一

Cocos2d-x3.0游戏实例之《别救我》第一篇——前言

我们能学到什么? 这是一个很简单的游戏,但是用到的东西比较多(对新手而言),起码,对于一个实例来说,它涉及的确实有点多. 笨木头花心贡献,啥?花心?不呢,是用心~ 转载请注明,原文地址:http://www.benmutou.com/blog/archives/797 文章来源:笨木头与游戏开发 通过这个游戏实例,可爱的你(小若:那不可爱的人呢?),可以学到以下知识点: 1. Cocos2d-x3.0物理引擎的简单使用 2. 读取Json文件作为怪物和物品配置 3. 利用Tiled地图实现可视化

MVC2.0==&gt;MVC3.0

总结出如下4个MVC3.0和2.0的重要区别. 1. @ 符号在 View 页面中的用法: C#代码以 @符号开头,例如 1 <h2>Name: @Model.Name</h2>2 3 以及4 5 @if (Model.Category == "Watersports") { 6 <p>@Model.Category <b>Splash!</b> </p> 7 } 如果你的代码中不是以 html 标记开头,也就是说

asp.net mvc3.0第一个程序helloworld开发图解

步骤一:新建asp.net mvc3.0项目 (选择Razor模板) 步骤二:创建控制器 步骤三:控制器源码内右键创建对应视图 步骤四:控制器内添加代码 步骤五:视图页面输出内容 步骤六:F5调试

Asp.Net MVC3.0中防止跨站的POST

在Form中添加 @Html.AntiForgeryToken(); 在后台的Action中增加 [ValidateAntiForgeryToken] 这个方法还可以添加自定义的参数 @Html.AntiForgeryToken("SaltValue"); 后台的Action中,必需指名Token的值才允许正常提交. [ValidateAntiForgeryToken Salt=("SaltValue")] Asp.Net MVC3.0中防止跨站的POST,布布扣,