0

我这样做是为了绑定两个存储过程。

存储过程返回表/列表数据。

var P1_PT_Pct_Thrown = pp.ppsproc_P1_PT_Pct_Thrown(_pid, _vs);
        List<ppsproc_P1_PT_Pct_Thrown_Result> ptpt = null;
        ptpt = new List<ppsproc_P1_PT_Pct_Thrown_Result>();
        ppsproc_P1_PT_Pct_Thrown_Result pt = new ppsproc_P1_PT_Pct_Thrown_Result();
        foreach (var p in P1_PT_Pct_Thrown)
        {
            pt.Years = p.Years;
            pt.FB = p.FB;
            pt.Cut = p.Cut;
            pt.CB = p.CB;
            pt.SL = p.SL;
            pt.SP_CH = p.SP_CH;
            pt.Other = p.Other;
            ptpt.Add(pt);
        }

这是第二张桌子

var P1_PT_Pct_Thrown = pp.ppsproc_P1_PT_Pct_Thrown(_pid, _vs);
        List<ppsproc_P1_PT_Pct_Thrown_Result> ptpt = null;
        ptpt = new List<ppsproc_P1_PT_Pct_Thrown_Result>();
        ppsproc_P1_PT_Pct_Thrown_Result pt = new ppsproc_P1_PT_Pct_Thrown_Result();
        foreach (var p in P1_PT_Pct_Thrown)
        {
            pt.Years = p.Years;
            pt.FB = p.FB;
            pt.Cut = p.Cut;
            pt.CB = p.CB;
            pt.SL = p.SL;
            pt.SP_CH = p.SP_CH;
            pt.Other = p.Other;
            ptpt.Add(pt);
        }

然后返回

var tuple = new Tuple<ppsproc_P1_PT_Pct_Thrown_Result, ppsproc_P1_PE_FB_Result>(ptpt, pefb);
        return View(tuple);

我有错误:ptptpefb无效。

请帮忙。谢谢

4

1 回答 1

0

我认为您将第一个表粘贴了两次……而且看起来您正在尝试创建列表元组,但实际上您正在创建单个项目的元组。尝试:

var tuple = new Tuple<
                     List<ppsproc_P1_PT_Pct_Thrown_Result>,
                     List<ppsproc_P1_PE_FB_Result>
                     >(ptpt, pefb);

不过,这可能不是您所追求的;您可能需要重新考虑您的代码并创建一个List<Tuple<ppsproc_P1_PT_Pct_Thrown_Result, ppsproc_P1_PE_FB_Result>>然后遍历您的列表以将元组创建为对。

于 2013-08-06T02:36:12.877 回答