首页 > 编程语言 >C#接口配置

C#接口配置

时间:2024-09-14 09:37:52浏览次数:10  
标签:Name C# 配置 接口 Score var new public match

点击查看代码
[Route("Values/Matches")]
[HttpGet]
public IHttpActionResult Matches(string key)
{
    var matches = db.Event.Where(a => a.StatusId == 2).First().Match.Where(a => a.TeamA != null && a.TeamB != null).ToList().Select(a => new 
    {
        TeamA = new
        {
            a.Team.Name,
            a.Team.Logo,
            Score = a.MatchScore.Sum(b => b.TeamAScore)
        },
        TeamB = new
        {
            a.Team1.Name,
            a.Team1.Logo,
            Score = a.MatchScore.Sum(b => b.TeamBScore)
        },
        a.Stadium.Name,
        Date = $"{a.MatchDate:yyyy-MM-dd} {a.StartTime:hh\\:mm}"
    });
    if (key != null)
    {
        if (DateTime.TryParseExact(key, "yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
        {
            matches = matches.Where(a => a.Date.Equals(key)).ToList();
        }
        else
        {
            matches = matches.Where(a => a.TeamA.Name.Contains(key) || a.TeamB.Name.Contains(key) || a.Name.Contains(key)).ToList();
        }
    }
    return Json(matches);
}

点击查看代码
[Route("Values/Events")]
[HttpGet]
public IHttpActionResult Events()
{
    var Events = db.Event.Select(a => new
    {
        a.Id,
        a.Name,
        Type = a.EventType.Name,
        a.StatusId
    }).ToList();
    return Json(new
    {
        Events,
        Current = Events.FindIndex(a => a.StatusId == 2),
    });
}

点击查看代码
[Route("Values/Teams")]
[HttpGet]
public IHttpActionResult Teams(int Id)
{
    var e = db.Event.Single(a => a.Id == Id);
    var teams = e.TeamInEvent.Select(a => new TeamItem
    {
        Id = a.TeamId,
        Name = a.Team.Name,
        Logo = a.Team.Logo,
        Score = 0
    }).ToList();
    var matches = e.Match.Where(a => a.TeamA != null && a.TeamB != null).Select(a => new
    {
        ScoreA = a.MatchScore.Sum(b => b.TeamAScore),
        ScoreB = a.MatchScore.Sum(b => b.TeamBScore),
        IdA = a.TeamA,
        IdB = a.TeamB
    }).ToList();
    foreach (var match in matches)
    {
        var ta = teams.Find(a => a.Id == match.IdA);
        var tb = teams.Find(a => a.Id == match.IdB);
        if (match.ScoreA > match.ScoreB)
        {
            ta.Score += 2;
            tb.Score += 1;
            ta.WinScore = match.ScoreA - match.ScoreB;
        }
        else if (match.ScoreA < match.ScoreB)
        {
            tb.Score += 2;
            ta.Score += 1;
            tb.WinScore = match.ScoreB - match.ScoreA;
        }
    }
    return Json(new
    {
        Teams = teams.OrderByDescending(a => a.Score).ThenByDescending(a => a.WinScore).ThenBy(a => a.Name).ToList(),
        Ongoing = e.StatusId == 2
    });
}
public class TeamItem
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Logo { get; set; }
    public int Score { get; set; }
    public int WinScore { get; set; }
}

标签:Name,C#,配置,接口,Score,var,new,public,match
From: https://www.cnblogs.com/XinBing1335/p/18413333

相关文章

  • VMware NSX Advanced Load Balancer (NSX ALB) 22.1.7 发布下载,新增功能概览
    VMwareNSXAdvancedLoadBalancer(NSXALB)22.1.7-多云负载均衡平台应用交付:多云负载均衡、Web应用防火墙和容器Ingress服务请访问原文链接:https://sysin.org/blog/vmware-nsx-alb-22/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org负载均衡平台NSXAdvan......
  • package.json依赖包漏洞之tough-cookie原型污染漏洞
    背景有个安全扫描的流水线,扫描了我负责的项目之后,发现一些漏洞。需要说明的是,这个扫描只是针对package.json文件,扫的是依赖树,而不是项目源代码,也不是build打包后的代码。这些正是我们提升项目安全性的宝贵机会。让我们一起来看看这些发现,并学习如何将它们转化为我们的优势。 ......
  • C# 获取磁盘或硬盘信息的坑,存在未就绪(IsReady = false)导致异常的问题
    最近测试组小伙伴在用外接扩展坞链接有线网络,发现好几个程序在获取磁盘信息的时候都直接报错。这让我很奇怪,拉取了现场的日志。 由于这个模块的代码已经很稳定,好久没修改过了,之前一直测试都没有问题的,然后查看windows的盘符发现,只要插上扩展坞就会无缘无故多出来这种虚拟盘,无......
  • 新手编程竞赛入门指南 [Cloned]
    欢迎加入编程竞赛协会(QQ群:)进入协会QQ群,联系纳新管理员xixu、ssmy,需提交信息(学院、班级、姓名、学号,vjudge帐号),通过审核后邀请加入“程序设计竞赛组”开展编程学习做题训练。受人数限制,一段时间不参与活动者会被移除。新手编程竞赛入门指南编程是程序设计的简称。计算机通过各种......
  • Taobao API interface: Taobao product details data interface
    InterfaceOverviewCommoninterface:taobao.item_get,usedtoobtainproductdetailsdata.Returninformation:Youcanobtainalotofinformationabouttheproduct,suchasproductname,price,sales,evaluation,storeinformation,etc.Specificallyincl......
  • 精准选品利器:淘宝商品详情接口数据分析平台的行业类目分析技巧
    在电商领域,产品选品是商家成功的关键之一。选择合适的行业类目和畅销的产品,能够帮助商家获得更多的销售机会和市场份额。而淘宝天猫数据分析平台则成为了一款强大的工具,提供了丰富的行业类目分析技巧,帮助商家精准选品。本文将介绍一些淘宝天猫数据分析平台的行业类目分析技巧,助......
  • 2、.Net 前端框架:ASP.Net Core - .Net宣传系列文章
    ASP.NETCore是一个跨平台、高性能、开源的框架,用于构建现代化的、基于云的、互联网连接的应用程序。它是微软对原始ASP.NET框架的重构和扩展,提供了更多的灵活性和改进的性能。ASP.NETCore可以用于开发Web应用程序、WebAPI、以及服务端渲染的Web页面。ASP.NETC......
  • vue3/provider 和 inject实现跨组件动态数据传递。
    实现跨层传递在Vue中,provider和inject是一种用于实现依赖注入的高级特性,允许一个祖先组件向其所有子孙组件注入一个依赖,而不论组件层次有多深,并在起上下游关系成立的时间里始终生效。这在某些场景下非常有用,比如当你需要跨多个组件层级传递数据时。定义provide对象:在父组......
  • Taobao API interface: Get Taobao product details data based on product ID
    TaobaoproductdetailsdataAPIinterfaceisasetofinterfacesprovidedbyTaobaoOpenPlatformforobtainingdetailedinformationofTaobaoproducts.Throughtheseinterfaces,developerscanintegrateTaobaoproductdataintheirownapplicationsorsy......
  • vue3API /watch
    1.watch侦听在Vue3中,watch是一个用于观察和响应Vue实例上的数据变动的函数。它可以用来观察几乎所有类型的数据,包括ref、reactive、响应式对象的属性,甚至是计算属性。当被观察的数据变化时,watch会触发一个回调函数。<scriptsetup>import{ref,watch}from'vue......