• MVC开发之排球计分(七)验证编辑方法


    修改代码,使得发布ReleaseDate看上去更好。打开Balls Ball.cs文件

    using System;

    using System.ComponentModel.DataAnnotations;

    using System.Data.Entity;

    namespace Balls.Models

    {

    public class Ball{

    public int ID { get; set; }

    public string one1{ get; set; }

    public string one2 { get; set; }

    public string one3{ get; set; }

    }

    public class BallsDBContext : DbContext

    {

    public DbSet<Ball> Team { get; set; }

    }

    }
    在浏览器地址栏里追加/Balls, 浏览到Balls页面。并进入编辑(Edit)页面。
                       

    MapRoute方法是使用HTTP请求路由查找到正确的控制器(controller)和行动方法,并提供了可选ID的参数。

    MapRoute方法也被用于通过HtmlHelpers如ActionLink的控制器,操作方法及任何路由数据,以生成URL。

    public static void RegisterRoutes(RouteCollection routes)

    {

    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

    routes.MapRoute(

    name: "Default",

    url: "{controller}/{action}/{id}",

    defaults: new { controller = "Balls", action = "Index",

    id = UrlParameter.Optional }

    );

    }
    处理 POST 请求
    [HttpPost]

    [ValidateAntiForgeryToken]

    public ActionResult one1([Bind(Include="ID,Shenglv,ReleaseDate,Age,Rongyu")] Movie movie)

    {

    if (ModelState.IsValid)

    {

    db.Entry(Ball).State = EntityState.Modified;

    db.SaveChanges();

    return RedirectToAction("Index");

    }

    return View(Ball);

    }
    接收form所post的数据,并转换所接收的Balls请求数据从而创建一个Ball对象。

    ModelState.IsValid方法用于验证提交的表单数据是否可用于修改(编辑或更新)一个Ball对象。

    如果数据是有效的数据,将保存到数据库的Ball集合(BallDBContext 实例)。

    通过调用BallDBContext的SaveChanges方法,新的数据会被保存到数据库。

    数据保存之后,代码会把用户重定向到BallsController类的Index操作方法,页面将显示列表,同时包括刚刚所做的更新。
    添加搜索
    public ActionResult Index(string BallGenre, string searchString)

    {

    var GenreLst = new List<string>();            

    var GenreQry = from d in db.Balls

    orderby d.Genre

    select d.Genre;

    GenreLst.AddRange(GenreQry.Distinct());

    ViewBag.movieGenre = new SelectList(GenreLst);

    var Balls = from m in db.Movies

    select m;

    if (!String.IsNullOrEmpty(searchString))

    {

    Balls = Balls.Where(s => s.Title.Contains(searchString));

    }

    if (!string.IsNullOrEmpty(BallGenre))

    {

    Balls = Balls.Where(x => x.Genre == BallGenre);

    }

    return View(Balls);

     方法的验证主要是对输入的得分情况及得分上限的验证

    本次的项目验证是对排球每一局的得分进行简单的验证

  • 相关阅读:
    C语言实现两栈空间共享
    MyEclipse里项目部署到tomcat上之后,tomcat webpps文件夹里为什么找不到这个项目
    CSS选择器
    用友2016成都校园招聘笔试题
    windows、ubuntu下eclipse搭建java、Python环境问题总结
    ubuntu上用eclipse搭建java、python开发环境
    windows 下用eclipse搭建java、python开发环境
    简单事件机制的研究
    软件测试(软件安装:php+mysql+apache+mantis过程遇到的问题以及解决方法)
    4、总结一下,以软件开发生命周期来说明测试的使用情况。
  • 原文地址:https://www.cnblogs.com/lijianguo/p/7073005.html
Copyright © 2020-2023  润新知