/// <summary> /// Return a merged set of User's Locations and Searched Locations if Merge=1 /// Else, returns Locations By City & Region /// </summary> /// <param name="RegionID"></param> /// <param name="City"></param> /// <returns></returns> public ActionResult LocationsBySearch(int RegionID, string City, int Merge) { LocationCollection unionLS = new LocationCollection(); try { bool bMerge = Convert.ToBoolean(Merge); List<ViewLocation> vls = new List<ViewLocation>(); LocationCollection ls = BizMgr.GetLocationsByCityRegionID(City, RegionID); LocationCollection uls = new LocationCollection(); if (bMerge) { uls = BizMgr.GetLocationsBySystemUserID(this.CurrentUser.SystemUserID); } unionLS = LAAF.Common.Helper.Union(uls, ls, "LocationID"); string[] arrSort = new string[] { "RegionAbbrev", "City" }; unionLS.Sort(arrSort, LAAF.Common.Helper.SortDirection.Ascending); } catch (Exception ex) { LogController.LogError(ex, LogEntryType.NormalError, "", "", "SystemUserID=" + this.CurrentUser.SystemUserID.ToString(), ""); } return PartialView("_SelectLocations", GetViewLocationsFromLocations(unionLS)); }