![](/img/trans.png)
[英]How to fix: Why is MyComboBox.Items.Count = 0, if I add as DataSource an List<MyClass> with 1 and more Elements?
[英]How improve add items under the List, when i have more than 2 elements
下一個代碼可以使用,但是我想知道是否存在更好的方法來執行此功能。
使用linq,我得到一個包含4個元素的列表,但是我需要在ProposalItems列表中添加這些元素,下一個代碼是列表的類型
private class ProposalItems
{
public double Quantity { get; set; }
public double Price { get; set; }
public int Row { get; set; }
public double Total { get; set; }
}
接下來的代碼是方法:
internal List<ProposalItems> GetProposalItems(int tradeId, int contendantId)
{
using (var db = new Entities())
{
//declare the list
List<ProposalItems> items = new List<ProposalItems>();
//query in linq
var data = db.ES_SC_PropuestasPrecios
.Join(db.ES_SC_CatalogoConceptos,
prices => prices.renglon,
concept => concept.renglon,
(prices, concept) => new { ES_SC_PropuestasPrecios = prices, ES_SC_CatalogoConceptos = concept })
.Where(w => w.ES_SC_CatalogoConceptos.idconcurso == tradeId && w.ES_SC_PropuestasPrecios.idconcursante == contendantId)
//select the items
.Select(s => new
{
Row = s.ES_SC_CatalogoConceptos.renglon,
Quantity = s.ES_SC_CatalogoConceptos.cantidad,
Price = s.ES_SC_PropuestasPrecios.preciounitario,
Total = s.ES_SC_PropuestasPrecios.importe
}).ToList();
// loop to add the item in the list
foreach (var item in data)
{
items.Add(new ProposalItems { Row = (int)item.Row, Price = (double)item.Price, Quantity = (double)item.Quantity, Total = (double)item.Total });
}
return items;
}
}
嘗試替換您當前的選擇
.Select(s => new ProposalItems {
Row = (int)s.ES_SC_CatalogoConceptos.renglon,,
Price = (double)s.ES_SC_PropuestasPrecios.preciounitario,
Quantity = (double)s.ES_SC_CatalogoConceptos.cantidad,
Total = (double)s.ES_SC_PropuestasPrecios.importe
}).ToList();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.