C# ';列表<;选择>';不包含';ChoiceId';并且没有扩展…是否缺少using指令或程序集引用?)

C# ';列表<;选择>';不包含';ChoiceId';并且没有扩展…是否缺少using指令或程序集引用?),c#,.net,unit-testing,C#,.net,Unit Testing,标题只是错误的一部分,以下是众多错误之一: “List”不包含“ChoiceId”的定义,并且找不到接受“List”类型的第一个参数的扩展方法“ChoiceId”(是否缺少using指令或程序集引用?) 我正试图对一份还款计划清单进行单元测试,如下所述。但我似乎无法获取该列表中的其余值,因为我在这些键下面有红色下划线错误(我在下面的单元测试中用****包装了这些键。我做错了,不知道如何解决它) 仍然在学习编程,希望你们能以正确的方式指导我。非常感谢你们的帮助 以下是我所拥有的: 型号: 使用Sy

标题只是错误的一部分,以下是众多错误之一:

“List”不包含“ChoiceId”的定义,并且找不到接受“List”类型的第一个参数的扩展方法“ChoiceId”(是否缺少using指令或程序集引用?)

我正试图对一份还款计划清单进行单元测试,如下所述。但我似乎无法获取该列表中的其余值,因为我在这些键下面有红色下划线错误(我在下面的单元测试中用****包装了这些键。我做错了,不知道如何解决它)

仍然在学习编程,希望你们能以正确的方式指导我。非常感谢你们的帮助

以下是我所拥有的:

型号:

使用System.Collections.Generic;
名称空间项目.模型
{
公营还款
{
公共整数金额{get;set;}
公共字符串DueDate{get;set;}
公共字符串还款ID{get;set;}
}
公共阶级选择
{
公共字符串选项ID{get;set;}
公共列表还款{get;set;}
}
公共类还款计划
{
公共列表选项{get;set;}
}
}

存储库:

使用System.Collections.Generic;
使用System.Linq;
使用项目模型;
Net系统;
使用System.Collections.Specialized;
使用系统文本;
名称空间项目.Repositories
{
公共类OrderRepository
{
私人静态列表_还款计划;
静态OrderRepository()
{
_还款计划=新列表();
_还款计划。添加(新的还款计划
{
选项=新列表
{
新选择
{
ChoiceId=“cho1”,
还款=新列表
{
新还款
{
金额=200,
DueDate=“2018-06-01”
}, 
新还款
{
金额=100,
DueDate=“2018-08-01”,
}
}
}, 
新选择
{
ChoiceId=“cho2”,
还款=新列表
{
新还款
{
还款ID=“Choice1”,
金额=300,
DueDate=“2018-10-01”
}, 
新还款
{
还款ID=“Choice2”,
金额=150,
DueDate=“2018-11-01”
}, 
}
}                                             
},
});
}

*单元测试*

[Test]
public void ListRepaymentPlan()
{
     // Arrange
     var controller = new CaseController();
     var expectedResult = new List<RepaymentPlan>();
     var repaymentPlan = new RepaymentPlan()
     {
          Choices = new List<Choice>
                    {
                        new Choice
                        {
                            ChoiceId = "cho1",
                            Repayments = new List<Repayment>
                                            {
                                                new Repayment
                                                {
                                                    Amount = 200,
                                                    DueDate = "2018-06-01"
                                                }, 
                                                new Repayment
                                                {
                                                    Amount = 100,
                                                    DueDate = "2018-08-01"
                                                }, 
                                            }
                       }, 
                        new Choice
                        {
                             ChoiceId = "cho2",
                             Repayments = new List<Repayment>
                                            {
                                                new Repayment
                                                {
                                                    RepaymentId = "Choice1",
                                                    Amount = 300,
                                                    DueDate = "2018-10-01"
                                                }, 
                                                new Repayment
                                                {
                                                    RepaymentId = "Choice2",
                                                    Amount = 150,
                                                    DueDate = "2018-11-01"
                                                }, 
                                            }
                        }                                             
                    },

            };
            expectedResult.Add(RepaymentPlan );

     // Act
     var actionResult = controller.FindRepaymentPlan("578", "156");
     var result = (List<RepaymentPlan >)actionResult;

     // Assert
     for (var i = 0; i < result.Count; i++)
     {
         Assert.AreEqual(expectedResult[i].Choices , result[i].Choices);
         Assert.AreEqual(expectedResult[i].Choices.**ChoiceId**, result[i].Choices.**ChoiceId**);
         Assert.AreEqual(expectedResult[i].Choices.**ChoiceId**.Repayments, result[i].Choices.**ChoiceId**.Repayments);
         Assert.AreEqual(expectedResult[i].Choices.**Repayments**.Amount, result[i].Choices.**Repayments**.Amount);
         Assert.AreEqual(expectedResult[i].Choices.**Repayments**.DueDate, result[i].Choices.**Repayments**.DueDate);
     }
 }
[测试]
公开作废清单还款计划()
{
//安排
var controller=new CaseController();
var expectedResult=新列表();
var还款计划=新还款计划()
{
选项=新列表
{
新选择
{
ChoiceId=“cho1”,
还款=新列表
{
新还款
{
金额=200,
DueDate=“2018-06-01”
}, 
新还款
{
金额=100,
DueDate=“2018-08-01”
}, 
}
}, 
新选择
{
ChoiceId=“cho2”,
还款=新列表
{
新还款
{
还款ID=“Choice1”,
金额=300,
DueDate=“2018-10-01”
}, 
新还款
{
归还
using System.Collections.Generic;
using System.Linq;
using Project.Models;
using System.Net;
using System.Collections.Specialized;
using System.Text;


namespace Project.Repositories
{
   public class OrderRepository
   {
       private static List<RepaymentPlan> _RepaymentPlan;

       static OrderRepository()
       {
           _RepaymentPlan = new List<RepaymentPlan>();

          _RepaymentPlan.Add(new RepaymentPlan 
          {
             Choices = new List<Choice>
                        {
                            new Choice
                            {
                                ChoiceId = "cho1",
                                Repayments = new List<Repayment>
                                                {
                                                    new Repayment
                                                    {
                                                        Amount = 200,
                                                        DueDate = "2018-06-01"
                                                    }, 
                                                    new Repayment
                                                    {
                                                        Amount = 100,
                                                        DueDate = "2018-08-01",
                                                    }
                                                }
                            }, 
                            new Choice
                            {
                                ChoiceId = "cho2",
                                Repayments = new List<Repayment>
                                                {
                                                    new Repayment
                                                    {
                                                        RepaymentId = "Choice1",
                                                        Amount = 300,
                                                        DueDate = "2018-10-01"
                                                    }, 
                                                    new Repayment
                                                    {
                                                        RepaymentId = "Choice2",
                                                        Amount = 150,
                                                        DueDate = "2018-11-01"
                                                    }, 
                                                }
                            }                                             
                        },
             });
}
[Test]
public void ListRepaymentPlan()
{
     // Arrange
     var controller = new CaseController();
     var expectedResult = new List<RepaymentPlan>();
     var repaymentPlan = new RepaymentPlan()
     {
          Choices = new List<Choice>
                    {
                        new Choice
                        {
                            ChoiceId = "cho1",
                            Repayments = new List<Repayment>
                                            {
                                                new Repayment
                                                {
                                                    Amount = 200,
                                                    DueDate = "2018-06-01"
                                                }, 
                                                new Repayment
                                                {
                                                    Amount = 100,
                                                    DueDate = "2018-08-01"
                                                }, 
                                            }
                       }, 
                        new Choice
                        {
                             ChoiceId = "cho2",
                             Repayments = new List<Repayment>
                                            {
                                                new Repayment
                                                {
                                                    RepaymentId = "Choice1",
                                                    Amount = 300,
                                                    DueDate = "2018-10-01"
                                                }, 
                                                new Repayment
                                                {
                                                    RepaymentId = "Choice2",
                                                    Amount = 150,
                                                    DueDate = "2018-11-01"
                                                }, 
                                            }
                        }                                             
                    },

            };
            expectedResult.Add(RepaymentPlan );

     // Act
     var actionResult = controller.FindRepaymentPlan("578", "156");
     var result = (List<RepaymentPlan >)actionResult;

     // Assert
     for (var i = 0; i < result.Count; i++)
     {
         Assert.AreEqual(expectedResult[i].Choices , result[i].Choices);
         Assert.AreEqual(expectedResult[i].Choices.**ChoiceId**, result[i].Choices.**ChoiceId**);
         Assert.AreEqual(expectedResult[i].Choices.**ChoiceId**.Repayments, result[i].Choices.**ChoiceId**.Repayments);
         Assert.AreEqual(expectedResult[i].Choices.**Repayments**.Amount, result[i].Choices.**Repayments**.Amount);
         Assert.AreEqual(expectedResult[i].Choices.**Repayments**.DueDate, result[i].Choices.**Repayments**.DueDate);
     }
 }
        // Assert
        for (var i = 0; i < result.Count; i++)
        {
            CollectionAssert.AreEqual(expectedResult[i].Choices, result[i].Choices);
            CollectionAssert.AreEqual(expectedResult[i].Choices[0].ChoiceId, result[i].Choices[0].ChoiceId);
            CollectionAssert.AreEqual(expectedResult[i].Choices[0].Repayments, result[i].Choices[0].Repayments);
            CollectionAssert.AreEqual(expectedResult[i].Choices, result[i].Choices);
            CollectionAssert.AreEqual(expectedResult[i].Choices[1].ChoiceId, result[i].Choices[1].ChoiceId);
            CollectionAssert.AreEqual(expectedResult[i].Choices[1].Repayments, result[i].Choices[1].Repayments);
        }
expectedResult[i].Choices[0].ChoiceId
CollectionAssert.AreEqual(expectedResult, result);