protected void GetClassificationAttributeDetails() { Accomodation_ID = new Guid(Request.QueryString["Hotel_Id"]); var result = AccSvc.GetClassificationAttributes(Accomodation_ID, Guid.Empty); List <DC_ClassificationAttributes_Type> _newObj = new List <DC_ClassificationAttributes_Type>(); foreach (string at in (from r in result select r.AttributeType).Distinct()) { DC_ClassificationAttributes_Type type = new DC_ClassificationAttributes_Type(); type.AttributeType = at; List <DC_ClassificationAttributes_SubType> lstSubType = new List <DC_ClassificationAttributes_SubType>(); foreach (string st in (from r in result where r.AttributeType == at select r.AttributeSubType).Distinct()) { DC_ClassificationAttributes_SubType subtype = new DC_ClassificationAttributes_SubType(); subtype.SubAttributeType = st; subtype.ListCA = (from r in result where r.AttributeType == at && r.AttributeSubType == st select r).ToList(); lstSubType.Add(subtype); } type.SubType = lstSubType; _newObj.Add(type); } repCAType.DataSource = _newObj; repCAType.DataBind(); }