private Tuple<LogQuery, string> ValidateSearchRequest(SearchRequest request)
 {
     var req = new LogQuery();
     var errMsg = string.Empty;
     DateTime tempTime;
     if (DateTime.TryParseExact(request.fromDate, "yy-MM-dd HH:mm", CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out tempTime))
     {
         req.DateTime_From = tempTime;
     }
     else
     {
     }
     return new Tuple<LogQuery, string>(req, errMsg);
 }
 //
 // GET: /Search/
 public void IndexAsync(SearchRequest request)
 {
     var validReq = ValidateSearchRequest(request);
     if (string.IsNullOrWhiteSpace(validReq.Item2))
     {
         AsyncManager.OutstandingOperations.Increment();
         AsyncManager.Parameters["offSetX"] = request.offSetX;
         AsyncManager.Parameters["offSetY"] = request.offSetY;
         AsyncManager.Parameters["canvasWidth"] = request.canvasWidth;
         AsyncManager.Parameters["canvasHeight"] = request.canvasHeight;
         NAppProfilerClient.SendQuery(validReq.Item1, AsyncManager);
     }
     else
     {
         AsyncManager.Parameters["errMsg"] = validReq.Item2;
     }
 }