2015-02-26 3 views
0

У меня есть класс с 8 свойствами заявил:Добавить несколько свойств класса в списке

public class classProduct 
{ 
    public int iProductID { get; set; } 
    public string sPName { get; set; } 
    public string sPDescription { get; set; } 
    public int iPTypeID { get; set; } 
    public string sPPrice { get; set; } 
    public string sPType { get; set; } 
    public string sImagePath { get; set; } 
    public string sDestinationPath { get; set; } 
} 

И у меня есть метод, в котором я добавить 4 свойства в моем списке, как и ProductDetailsTbls мой tbl1 и ProductTypeTbls является Tbl2 ,

public List<classProduct> GetAllProduct() 
{ 
    List<classProduct> lst = new List<classProduct>(); 
    lst = (from c in dc.ProductDetailsTbls 
      join d in dc.ProductTypeTbls 
      on c.PTypeID equals d.PTypeID 
      select new classProduct { sPName=c.PName, sPDescription=c.PDescription, sPPrice=c.PPrice, sPType=d.PType }).ToList(); 
    return lst; 
} 

Но он возвращает все свойства, которые я не хочу.

+0

Что именно вы ожидаете получить? – Tomtom

+0

желаемый результат - имя sPName, sPDescription, sPPrice, sPType –

+0

@RahulSingh: как назначить явно. –

ответ

2

Если вам нужны только некоторые свойства, я думаю, вам нужно будет ввести новый класс.

Мой подход для этого состоит в том, чтобы определить базовый класс с вашими четырьмя свойствами, а затем вы можете наследовать от него classProduct.

ваш базовый класс, то выглядит следующим образом:

public class baseClassProduct 
{ 
    public string sPName { get; set; } 
    public string sPDescription { get; set; } 
    public string sPPrice { get; set; } 
    public string sPType { get; set; } 
} 

и ваш classProduct:

public class classProduct : baseClassProduct 
{ 
    public int iProductID { get; set; } 
    public int iPTypeID { get; set; } 
    public string sImagePath { get; set; } 
    public string sDestinationPath { get; set; } 
} 

В вашем GetAllProduct-методе вы можете работать с BaseClass и вы получите только ту информацию, вам хотеть.

public List<baseClassProduct> GetAllProduct() 
{ 
    List<baseClassProduct> lst = new List<baseClassProduct>(); 
    lst = (from c in dc.ProductDetailsTbls 
      join d in dc.ProductTypeTbls 
      on c.PTypeID equals d.PTypeID 
      select new baseClassProduct { sPName=c.PName, sPDescription=c.PDescription, sPPrice=c.PPrice, sPType=d.PType }).ToList(); 
    return lst; 
}