string hxmc = (string)dryxfsz["hxmc"];
double hxfs = (double)dryxfsz["hxfs"];
//先计算总分有效分人数等
var cx_mbzf = from aa in ds_xscj_tj.Tables[0].AsEnumerable()
where aa.Field<string>("lb") == lb && aa.Field<string>("nj") == nj
&& (aa.Field<double?>("zf").HasValue && aa.Field<double?>("zf") > 0)
select aa;
int zfyxfrs;//总分有效分人数
int ckrs;//参考人数
double bjpjf;//班级平均分
double bjsxl;//总分上线率
if (cx_mbzf.Count() > 0)
{
zfyxfrs = cx_mbzf.Where(aa => aa.Field<double?>("zf") >= hxfs).Count();
ckrs = cx_mbzf.Count();
bjpjf = Math.Round((double)cx_mbzf.Average(aa => aa.Field<double?>("zf")), 1);
bjsxl = Math.Round((double)zfyxfrs / (double)ckrs * 100, 2);
//修改数据保存
// string cxzf = string.Format("lb='{0}' and hxmc='{1}' and bj='合计'", lb, hxmc);
// DataRow[] drzf = ds_xgk_yxf.Tables["yxf"].Select(cxzf);
var drzf = ds_xgk_yxf.Tables["yxf"].AsEnumerable().Where(aa => aa.Field<string>("lb") == lb
&& aa.Field<string>("hxmc") == hxmc && aa.Field<string>("bj") =="合计");//上面注释掉的两行代码也不错,都可以调用适配器保存到数据库
foreach (DataRow dr in drzf)
{
dr["ckrs"] = ckrs;
dr["zfyxfrs"] = zfyxfrs;
dr["zfpjf"] = bjpjf;
dr["zfsxl"] = bjsxl;
}
}
sda_xgk_yxf.Update(ds_xgk_yxf, "yxf");//更新到数据库

浙公网安备 33010602011771号