.net - 在循环中构建 IEnumerable

标签 .net vb.net class myob

类(class):

public class CalculateDiscountsFees
  {

    public IEnumerable<CalculateDiscountsFeesItem> Items { get; set; }
  }

public class CalculateDiscountsFeesItem
{

    public int RequestID { get; set; }


    public CalculateDiscountsFeesSale Sale { get; set; }


    public DateTime PaymentDate { get; set; }
}

public class CalculateDiscountsFeesSale
{
    public Guid UID { get; set; }

    public CalculateDiscountsFeesSaleType Type { get; set; }
}

这些是我需要使用的 sdk 中的类。我需要构建CalculateDiscountsFees,然后将其传回sdk。但是我在做这件事时遇到了麻烦。我想要的方法是在循环中创建一个CalculateDiscountsFeesItem,然后尝试将其添加到CalculateDiscountsFees 中。这不起作用,因为 ienumerable 没有添加。

我尝试创建扩展模块来创建我自己的添加,但未能使其正常工作。

这是我希望在理想世界中工作的代码。希望这能让您了解我正在尝试做什么。

       Dim fees As New CalculateDiscountsFees
       Dim sale = New CalculateDiscountsFeesSale
       Dim feesitem = New CalculateDiscountsFeesItem
       Dim id = List.Item(0).UID
       sale.UID = id
       sale.Type = Version2.Sale.CalculateDiscountsFeesSaleType.Invoice
       feesitem.RequestID = 1
       feesitem.PaymentDate = Now()
       feesitem.Sale = sale
       fees.Items.Add( feesitem)
       Dim feeResult = CalculateDiscountsFeesSvc.Execute(companyFile, fees,     credentials)

想知道如何构建CalculateDiscountFees。我尝试创建CalculateDiscountFeesItems 列表,但无法将其获取CalculateDiscountFees 类型。

非常感谢任何建议。现在已经花了一整天的时间来处理它,但没有任何进展。

干杯

最佳答案

构建 CalculateDiscountsFeesItem 列表,然后将该列表分配给 CalculateDiscountsFeesItems 属性的实例,如下所示:

Dim fees As New CalculateDiscountsFees
Dim listOfCalculateDiscountsFeesItem As New List(Of CalculateDiscountsFeesItem)

Dim sale As New CalculateDiscountsFeesSale()
Dim id = List.Item(0).UID
sale.UID = id
sale.Type = Version2.Sale.CalculateDiscountsFeesSaleType.Invoice

Dim feesItem  As New CalculateDiscountsFeesItem()
feesitem.RequestID = 1
feesitem.PaymentDate = Now()
feesitem.Sale = sale

listOfCalculateDiscountFeesItem.Add(feesItem)

... 
Repeat above for as many fees items as you need in the list
...

现在,您可以获取 List(OfCalculateDiscountsFeesItem) 并将其分配给 fees.Items 属性,如下所示:

fees.Items = listOfCalculateDiscountFeesItem.AsEnumerable()

关于.net - 在循环中构建 IEnumerable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20233418/

相关文章:

.net - 使用 IN 子句参数的 SQL Server 查询

c# - 比较包含同一组变量/属性的不同类

C# 在转换后访问类成员

c# - MSTest 断言因空引用而失败

.net - .net 核心项目使用 <DebugType>Full</DebugType> 和 <DebugType>Portable</DebugType> 有什么区别?

c# - 什么可能导致性能提高? GC 时间、池化

c# - 带有 Context.Handler 和 Server.Transfer 的命名空间?

vb.net - 如何在第一次执行vb.net时重新启动PC

asp.net - 防止下拉列表中的用户输入?

c++ - 不允许定义一个类的多个实例