Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linq 使用列表将集合添加到列表时出现问题。添加 私人列表详细信息(家庭列表) { List lstPolicyInfo=新列表(); var checkInHouseHold=来自LST中的c 其中c.policydeail.Any(p=>p.LineOfBusiness.Trim().ToUpper()=“A”和&p.PolicySourceSystem.ToUpper().Trim()!=“PLC” &&p.PolicySourceSystem.ToUpper().Trim()!=“APS” &&p.PolicySourceSystem.ToUpper().Trim()!=“最重要的”) 选择c.PolicyDetail; foreach(checkInHouseHold中的var策略) { var chek=policies.Where(p=>p.LineOfBusiness.Trim().ToUpper()==“A”和&p.PolicySourceSystem.ToUpper().Trim()!=“PLC” &&p.PolicySourceSystem.ToUpper().Trim()!=“APS” &&p.PolicySourceSystem.ToUpper().Trim()!=“最重要”和p.LineOfBusiness.ToUpper().Trim()=“A”); lstpolicinfo.Add(chek); } 返回策略信息; }_Linq_C# 4.0_Generics - Fatal编程技术网

Linq 使用列表将集合添加到列表时出现问题。添加 私人列表详细信息(家庭列表) { List lstPolicyInfo=新列表(); var checkInHouseHold=来自LST中的c 其中c.policydeail.Any(p=>p.LineOfBusiness.Trim().ToUpper()=“A”和&p.PolicySourceSystem.ToUpper().Trim()!=“PLC” &&p.PolicySourceSystem.ToUpper().Trim()!=“APS” &&p.PolicySourceSystem.ToUpper().Trim()!=“最重要的”) 选择c.PolicyDetail; foreach(checkInHouseHold中的var策略) { var chek=policies.Where(p=>p.LineOfBusiness.Trim().ToUpper()==“A”和&p.PolicySourceSystem.ToUpper().Trim()!=“PLC” &&p.PolicySourceSystem.ToUpper().Trim()!=“APS” &&p.PolicySourceSystem.ToUpper().Trim()!=“最重要”和p.LineOfBusiness.ToUpper().Trim()=“A”); lstpolicinfo.Add(chek); } 返回策略信息; }

Linq 使用列表将集合添加到列表时出现问题。添加 私人列表详细信息(家庭列表) { List lstPolicyInfo=新列表(); var checkInHouseHold=来自LST中的c 其中c.policydeail.Any(p=>p.LineOfBusiness.Trim().ToUpper()=“A”和&p.PolicySourceSystem.ToUpper().Trim()!=“PLC” &&p.PolicySourceSystem.ToUpper().Trim()!=“APS” &&p.PolicySourceSystem.ToUpper().Trim()!=“最重要的”) 选择c.PolicyDetail; foreach(checkInHouseHold中的var策略) { var chek=policies.Where(p=>p.LineOfBusiness.Trim().ToUpper()==“A”和&p.PolicySourceSystem.ToUpper().Trim()!=“PLC” &&p.PolicySourceSystem.ToUpper().Trim()!=“APS” &&p.PolicySourceSystem.ToUpper().Trim()!=“最重要”和p.LineOfBusiness.ToUpper().Trim()=“A”); lstpolicinfo.Add(chek); } 返回策略信息; },linq,c#-4.0,generics,Linq,C# 4.0,Generics,看起来很简单的代码,但给出了错误。由于chek不是T型,如何处理 错误是“System.Collections.Generic.List.Add()”的最佳重载方法匹配项此方法不是泛型的;你想替换吗 列表与列表 ParsePolicyDetailswithParsePolicyDetails lstpolicinfo.Addwithlstpolicinfo.AddRange 这种方法不是通用的;你想替换吗 列表与列表 ParsePolicyDetailswithParsePolicyDeta

看起来很简单的代码,但给出了错误。由于chek不是T型,如何处理


错误是“System.Collections.Generic.List.Add()”的最佳重载方法匹配项此方法不是泛型的;你想替换吗

  • 列表
    列表
  • ParsePolicyDetails
    with
    ParsePolicyDetails
  • lstpolicinfo.Add
    with
    lstpolicinfo.AddRange

这种方法不是通用的;你想替换吗

  • 列表
    列表
  • ParsePolicyDetails
    with
    ParsePolicyDetails
  • lstpolicinfo.Add
    with
    lstpolicinfo.AddRange

    • 我认为使用var可能会让人困惑

      尝试将它们更改为实际类型,这可能有助于您了解发生了什么


      如果看不到其他类是如何设置的,就很难判断。

      我认为var的使用可能会让人困惑

      尝试将它们更改为实际类型,这可能有助于您了解发生了什么


      如果看不到类的其余部分是如何设置的,很难判断。

      请添加一个语言标记,这看起来像C#1)您正在尝试将序列(调用
      Where
      的结果)添加到列表中。这听起来是个坏主意。2) 看起来这根本不应该是通用的。3) “但给出错误”的信息永远不够——总是说错误是什么。请添加一个语言标记,这看起来像C#1)您试图将序列(调用
      Where
      的结果)添加到列表中。这听起来是个坏主意。2) 看起来这根本不应该是通用的。3) “但给出错误”永远都不够信息——总是说错误是什么。它起作用了。你能简单地告诉我AddRange做了什么
      Add
      只在列表中添加了一项
      AddRange
      获取一系列项目并将它们全部添加到列表中。因此,由于
      chek
      是一个项目范围(它是LINQ查询的结果),您需要使用
      AddRange
      而不是
      Add
      。它起作用了。您能简单地告诉我AddRange做什么吗
      Add
      只向列表中添加一个项目
      AddRange
      获取一系列项目并将它们全部添加到列表中。因此,由于
      chek
      是一个项目范围(它是LINQ查询的结果),因此需要使用
      AddRange
      而不是
      Add
       private List<T> ParsePolicyDetails<T>(List<HouseHoldview> lsthousehold)
          {
              List<T> lstPolicyInfo = new List<T>();
      
              var checkInHouseHold = from c in lsthousehold
                                     where c.PolicyDetail.Any(p => p.LineOfBusiness.Trim().ToUpper() == "A" && p.PolicySourceSystem.ToUpper().Trim() != "PLCS"
                                         && p.PolicySourceSystem.ToUpper().Trim() != "APS"
                                         && p.PolicySourceSystem.ToUpper().Trim() != "FOREMOST")
                                     select c.PolicyDetail;
      
              foreach (var policies in checkInHouseHold)
              {
                  var chek=policies.Where(p => p.LineOfBusiness.Trim().ToUpper() == "A" && p.PolicySourceSystem.ToUpper().Trim() != "PLCS"
                                           && p.PolicySourceSystem.ToUpper().Trim() != "APS"
                                           && p.PolicySourceSystem.ToUpper().Trim() != "FOREMOST" && p.LineOfBusiness.ToUpper().Trim() == "A");
                  lstPolicyInfo.Add(chek);
              }
              return lstPolicyInfo;
          }