System.Collections.Generic.KeyNotFoundException ASP.Net MVC

Last Reply on Nov 23, 2015 05:21 AM By dharmendr

Posted on Nov 18, 2015 03:23 AM

Hello all, I am working on a MVC project, I currently finished three different excel sheets and depending on the type of insurance the user selects a certain default excel sheet format should be used for that insurance. Currently I can only select one format in the return statement. What I was trying to do is have an if condition depending the string context to decide what excel format to use.

 

public ActionResult GenerateTripLog(int driverId, int vehicleId, int typeId, int customerId)
{
            try
            {
                var results = (from s in db.usp_TripLog(driverId, vehicleId, typeId, customerId, sDate, eDate) 
                               select s).ToList();

                var driver = new DriverRepository(GetCurrentUser()).GetDriver(driverId);
                var iType = db.insurancetypes.SingleOrDefault(c => c.id == typeId);
                var tenant = GetTenant(GetCurrentUser());                
                var period = "All";           

                var driverSignature = 
                                (from s in driver.driveravailabilityevents
                                where
                                orderby s.createdon descending
                                select s.signature).FirstOrDefault();

                object[] filterStrs =   
                {
                    tenant == null ? "All" : tenant.tenantname,
                    period,
                    driver == null || driver.person == null ? "All" : driver.person.fullname,
                    iType == null ? "All" : iType.name,
                    driverSignature
                };
          //THIS IS WHAT I WAS TRYING TO DO THE SELECTION
                string insuranceType = Convert.ToString(iType);
                if(insuranceType == "FAMILY CARE")
                {
                    return TripLogSpreadsheet(results, filterStrs);
                }
                else if(insuranceType == "BELLIN")
                {
                    return BELLINLogSpreadsheet(results, filterStrs);
                }

      //return TripLogSpreadsheet(results, filterStrs);
      }
      catch (Exception ex)
      {
            ViewData["errormessage"] = ex.Message;
            return View("Error");
      }
}

 

You are viewing reply posted by: dharmendr on Nov 23, 2015 05:21 AM.
Posted on Nov 23, 2015 05:21 AM Modified on on Nov 23, 2015 07:53 AM