public ViewResult Index(InputViewModel inputViewModel) { var resultsViewModel = new ResultsViewModel(); try { string prettySql; var tsqlScript = ConvertSqlStringToTSqlScript.Convert(inputViewModel.Sql, out prettySql); var fetchXml = ConvertTSqlScriptToFetchXml.Convert(tsqlScript); var validationMessage = ValidateFetchXml.Validate(fetchXml.ToString()); resultsViewModel = new ResultsViewModel { Sql = prettySql, FetchXml = fetchXml.ToString(), ErrorMessage = null, ValidationMessage = validationMessage }; } catch (Exception ex) { resultsViewModel = new ResultsViewModel { Sql = inputViewModel.Sql, ErrorMessage = ex.Message }; } return View("Results", resultsViewModel); }
public ViewResult Index() { var inputViewModel = new InputViewModel { Sql = @"select contact.Name, contact.createddate AS testalias, contact.createdby, address.street, address.city, anothertable.test from contact inner join address on contact.contactid = address.contactid left join anothertable on address.addressid = anothertable.addressid where contact.createddate >= '1/1/2011' and address.city is not null and anotherTable.Territory in ('A', 'B', 'C') and contact.date between '1/1/2011' and '2/1/2011' order by contact.name desc" }; return View("Index", inputViewModel); }