zoukankan      html  css  js  c++  java
  • 排球积分程序(三)——模型类的设计

    ---恢复内容开始---

    模型类

    根据需求的要求需要一个队伍类,一个队员类,一个主队比分类,一个客队比分类(这两个类可以合成一个,但是建立外键的时候两个外键不知道该怎么去解决,于是分开了)

    队伍模型

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    
    namespace MvcVolleyball.Models
    {
        public class Team
        {
            public int teamId { get; set; }//id
            public string teamName { get; set; }//队名
            public List<TeamMember> teamMembers;//队员
        }
    }

    队员模型

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;
    
    namespace MvcVolleyball.Models
    {
        public class TeamMember
        {
            [Key]
            public int memberId { get; set; }//id
            [ForeignKey("team")]
            public int teamId { get; set; } //队伍id
            public string number { get; set; }//号码
            public string name { get; set; }//姓名
            public DateTime brithDate { get; set; }//出生日期
            public string position { get; set; }//位置
            public int height { get; set; }//身高
            public int weight { get; set; }//体重
            [Required]
            public Team team { get; set; }//队伍
        }
    }

    主队得分模型

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;
    
    namespace MvcVolleyball.Models
    {
        public class HostTeamScore
        {
            [Key]
            public int id { get; set; }
            public int inningNum { get; set; }//局数
            public int teamId { get; set; }//主队id
           [ForeignKey("teamMember")]
            public int memberId { get; set; }//得分队员id       
            public int hostTeamScore { get; set; }//主队得分
            [Required]
            public TeamMember teamMember { get; set; }
           
           
        }
    }

    客队得分模型

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;
    
    namespace MvcVolleyball.Models
    {
       public class GuestTeamScore
        { 
            [Key]
            public int id { get; set; }
            public int inningNum { get; set; }//局数
            
            [ForeignKey("teamMember")]
            public int memberId { get; set; }//得分队员id         
            public int guestTeamScore { get; set; }//客队得分
    
           [Required]
            public TeamMember teamMember { get; set; } 
           
         
        }
    }

    队伍模型中有队员的集合  而每一个队员有自己的编号以及所属队伍,故teamId作为外键。

    而每一个队员有自身的memberId 这就与得分模型中的menmberId作为外键关联起来,从而精确到得分的队员。

    另:建立外键参考了这一系列博客

    Entity Framwork CodeFirst 学习笔记一:EF 概念和初次接触CodeFirst

  • 相关阅读:
    git log
    [转]深入详解javascript之delete操作符
    js性能优化文章集锦
    [转]A记录和CNAME记录的区别
    [转]200 OK (from cache) 与 304 Not Modified------没有这个规则(ETag是否移除)!!!from cache和304,请查看顶部的流程图!
    nodejs渲染到页面的理解
    git之reset
    Mayavi入门
    OpenAcc笔记——update
    Qt笔记——数据库的图形界面
  • 原文地址:https://www.cnblogs.com/colorful-Ji/p/7056630.html
Copyright © 2011-2022 走看看