private List<Loans> ExtractLoanList(DataTable csvData, List<string> columnNames)
        {
            List<Loans> importedList = new List<Loans>();
            //  string strMessage = "";
            try
            {

                // Get All properties
                //PropertyInfo[] properties = model.GetType().GetProperties();
                //foreach (PropertyInfo pInfo in properties)
                //{
                //    if (columnNames.Contains(pInfo.Name))
                //    {
                //        object value = row[pInfo.Name];
                //        TypeConverter typeConverter = TypeDescriptor.GetConverter(pInfo.PropertyType);
                //        object propValue = null;
                //        if (typeConverter.GetType().FullName == "System.ComponentModel.NullableConverter")
                //        {
                //            if (value.ToString().Trim() == "1" || value.ToString().Trim() == "Yes")
                //            {
                //                propValue = typeConverter.ConvertFromString(("True"));
                //            }
                //        }
                //        else
                //            propValue = typeConverter.ConvertFromString((value.ToString()));

                //        // Set value on the property
                //        pInfo.SetValue(model, propValue, null);
                //    }

                foreach (DataRow dr in csvData.Rows)
                {
                    Loans model = new Loans();
                    model.CodeName = dr["CodeName"].ToString();

                 //   model.AmortisationsStartPoint = dr["AmortisationsStartPoint"].ToString();
                    model.Borrower = dr["Borrower"].ToString();
                    if (dr["Gurantor"] != null )
                    {
                        model.Gurantor = dr["Gurantor"].ToString();
                    }

                    model.Country = dr["Country"].ToString();
                    model.Grid = dr["Grid"].ToString();
                    model.SummitCreditEntity = dr["SummitCreditEntity"].ToString();
                    model.CreditRatingModys = dr["CreditRatingModys"].ToString();
                    model.CreditRatingSPs = dr["CreditRatingSPs"].ToString();
                    model.CreditRatingFitch = dr["CreditRatingFitch"].ToString();
                    model.CreditRatingING = dr["CreditRatingING"].ToString();
                    model.StructureID = dr["StructureID"].ToString();
                    model.PP = dr["PP"].ToString();
                    model.Sector = dr["Sector"].ToString();
                    model.FacilitySize = dr["FacilitySize"].ToString();
                    model.Signing_Date = dr["Signing_Date"].ToString();
                    model.Maturity_Date = dr["Maturity_Date"].ToString();
                    model.CouponDate = dr["CouponDate"].ToString();
                    model.FixedOrFloating = dr["FixedOrFloating"].ToString();
                    model.Margin = dr["Margin"].ToString();
                    model.Notional = dr["Notional"].ToString();
                    model.Currency = dr["Currency"].ToString();
                    model.CouponFrequency = dr["CouponFrequency"].ToString();
                    if (dr["Bilateral"].ToString() == "Yes")
                        model.Bilateral = true;
                    else
                        model.Bilateral = false;

                    //model.Amortizing = dr["Amortizing"].ToString();
                    model.Amortizing = "Yes";
                    if (dr["AmortisationsStartPoint"].ToString() != string.Empty)
                    {
                        model.AmortisationsStartPoint = dr["AmortisationsStartPoint"].ToString();

                    }
                    else
                        model.AmortisationsStartPoint = dr["CouponDate"].ToString();
                    if (dr["NoOfAmortisationPoint"].ToString().Trim() != string.Empty)
                        model.NoOfAmortisationPoint = Convert.ToInt16(dr["NoOfAmortisationPoint"]);
                    else
                        model.NoOfAmortisationPoint = GetNoOfAmortisations();
                    importedList.Add(model);
                    LoansBLL bll = new LoansBLL();
                    string str = bll.AddImportedLoans(model);
                    if (str != "")
                    {
                        RadWindowManager1.RadAlert(str, 330, 180, "realedge associates", "alertCallBackFn");

                    }
                }

            }
            catch (Exception ex)
            {

            }
            return importedList;
        }