我目前正致力于板球项目。因此,我必须显示该鼓风机的咒语以及当前咒语中正在运行的咒语。 你可以在这里看到截图
对于Ex。
截图中有4个投球手b1
,b2
,b3
,b4
。
B1
保龄球比spell = 1
和spellover = 1
B2
保龄球比spell = 1
和spellover = 1
B1
保龄球比赛结束时spell = 1
和spellover = 2
B2
保龄球比spell = 1
和spellover = 2
现在投球手正在改变
B3
保龄球比第五名spell = 1
和spellover = 1
B4
保龄球比第spell = 1
和spellover = 1
B3
保龄球比第spell = 1
和spellover = 2
B4
保龄球比spell = 1
和spellover = 2
现在再次更换投球手,B1和B2已准备好进行保龄球
B1
保龄球比当时spell = 2
和spellover = 1
B2
保龄球排在第10位时spell = 2
和spellover = 1
我想要完全高于数据库spell
和spellover
的记录。当投球手保龄球连续断线时,意味着投球手的一个咒语已经结束。
您可以在此处查看我的数据库记录
如果在linq视图中有任何想法,那么您也可以建议我如何在linq视图中执行此操作。
答案 0 :(得分:0)
给你一个想法: 1.定义一个课程,你可以将它命名为保龄球或任何合适的
class bowlers
{
public string bowlerid { get; set; }
public int spell { get; set; }
public int spellOver { get; set; }`enter code here`
}
2.使用来自数据库的值填充列表。我已手动填充:
List<bowlers> temp = new List<bowlers>();
temp.Add(new bowlers{bowlerid="1"});
temp.Add(new bowlers{bowlerid="2"});
temp.Add(new bowlers{bowlerid="3"});
temp.Add(new bowlers{bowlerid="4"});
3.用保龄球id输入lsit var lst = temp.OrderByDescending(x =&gt; x.bowlerid);
4.最后你需要定义设置法术和法术的逻辑。你可以设置法术
你可以这样做。
string current=temp[0].bowlerid;
var result1=temp.SkipWhile(x=>x.bowlerid!=current).Select<bowlers,bowlers>(x=>{spell=x.spell;//update current
return new bowlers{bowlerid=x.bowlerid,spell=spell+1}});
您需要根据场景更新当前变量。