Это классический вопрос, но я не понимаю, как это понять в моем коде.C# Классическая ошибка. Объект должен быть установлен
Ссылка на объект не установлена в экземпляр объекта.
Я знаю, что мне нужно написать что-то вроде new IList<SubInvoice>();
, но я не вижу, где.
private void GetSub()
{
var invoice = Selected;
var invs = (from i in ctx.Invoices
join p in ctx.products on i.refSupp equals p.refsup
join u in ctx.units on p.unit equals u.idunit
where i.suppInvNumber == invoice.suppInvNumber
select new SubInvoice
{
Invoice = i,
description = p.description,
unit1 = u.unit1
});
if(Products != null)
Products.Clear();
if (invs != null)
foreach(var inv in invs)
{
SubInvoice sub = new SubInvoice(){Invoice=inv.Invoice, description = inv.description, unit1 = inv.unit1};
Products.Add(sub); //error
}
}
private IList<SubInvoice> _products;
public IList<SubInvoice> Products
{
get
{
return _products;
}
set
{
_products = value;
OnPropertyChanged("Products");
}
}
public class SubInvoice
{
public Invoice Invoice { get; set; }
public string description { get; set; }
public string unit1 { get; set; }
}
Где вы получаете эту ошибку –
Products.Add (суб); – Cantinou
@ M.kazemAkhgary, продукт не перемещается, поэтому не требуется замедление. О, вы имели в виду ** заявление **. :-P – GreatAndPowerfulOz