// // POST: /Calculator/Div public void Div() { try { // Receive and process the POST data string res = HttpContext.Request.Method.ToString(); Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); StreamReader responseStream = new StreamReader(HttpContext.Request.Body, enc); string body = responseStream.ReadToEnd(); Div div = JsonConvert.DeserializeObject <Div>(body); // Get the result Calculator C = new Calculator(); int quo = C.div(div.Dividend, div.Divisor); int rem = C.rem(div.Dividend, div.Divisor); // Create a Result Object DivRes divres = new DivRes(); divres.Quotient = quo; divres.Remainder = rem; // Serialize it string param = JsonConvert.SerializeObject(divres); // Send it back using POST HttpContext.Response.ContentType = "application/json"; using (var streamWriter = new StreamWriter(HttpContext.Response.Body, enc)) { streamWriter.Write(param); streamWriter.Flush(); streamWriter.Close(); } var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Div operation"); } catch (System.Exception e) { // Create a Result Object CalculatorService.Client.Exception ex = new CalculatorService.Client.Exception(); ex.ErrorCode = "InternalError"; ex.ErrorStatus = 500; ex.ErrorMessage = e.Message; // Serialize it string exec = JsonConvert.SerializeObject(ex); // Send it back using POST HttpContext.Response.ContentType = "application/json"; Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); using (var streamWriter = new StreamWriter(HttpContext.Response.Body, enc)) { streamWriter.Write(exec); streamWriter.Flush(); streamWriter.Close(); } var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Object reference not set to an instance of an object."); } }
// // POST: /Calculator/Sqrt public void Sqrt() { try { // Receive and process the POST data string res = HttpContext.Request.Method.ToString(); Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); StreamReader responseStream = new StreamReader(HttpContext.Request.Body, enc); string body = responseStream.ReadToEnd(); Sqrt sqrt = JsonConvert.DeserializeObject <Sqrt>(body); // Get the result Calculator C = new Calculator(); int squ = C.sqrt(sqrt.Number); // Create a Result Object SqrtRes sqrtres = new SqrtRes(); sqrtres.Square = squ; // Serialize it string param = JsonConvert.SerializeObject(sqrtres); // Send it back using POST HttpContext.Response.ContentType = "application/json"; using (var streamWriter = new StreamWriter(HttpContext.Response.Body, enc)) { streamWriter.Write(param); streamWriter.Flush(); streamWriter.Close(); } var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Sqrt operation"); } catch (System.Exception e) { // Create a Result Object CalculatorService.Client.Exception ex = new CalculatorService.Client.Exception(); ex.ErrorCode = "InternalError"; ex.ErrorStatus = 500; ex.ErrorMessage = e.Message; // Serialize it string exec = JsonConvert.SerializeObject(ex); // Send it back using POST HttpContext.Response.ContentType = "application/json"; Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); using (var streamWriter = new StreamWriter(HttpContext.Response.Body, enc)) { streamWriter.Write(exec); streamWriter.Flush(); streamWriter.Close(); } var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Object reference not set to an instance of an object."); } }
// // POST: /Calculator/Add public void Add() { try { // Receive and process the POST data string res = HttpContext.Request.Method.ToString(); Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); StreamReader responseStream = new StreamReader(HttpContext.Request.Body, enc); string body = responseStream.ReadToEnd(); Add add = JsonConvert.DeserializeObject <Add>(body); // Get the result Calculator C = new Calculator(); int sum = C.add(add.Addends); // Create a Result Object AddRes addres = new AddRes(); addres.Sum = sum; // Serialize it string param = JsonConvert.SerializeObject(addres); // Send it back using POST HttpContext.Response.ContentType = "application/json"; using (var streamWriter = new StreamWriter(HttpContext.Response.Body, enc)) { streamWriter.Write(param); streamWriter.Flush(); streamWriter.Close(); } var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Add operation"); } catch (JsonReaderException je) { // Create a Result Object CalculatorService.Client.Exception ex = new CalculatorService.Client.Exception(); ex.ErrorCode = "InternalError"; ex.ErrorStatus = 500; ex.ErrorMessage = je.Message; // Serialize it string exec = JsonConvert.SerializeObject(ex); // Send it back using POST HttpContext.Response.ContentType = "application/json"; Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); using (var streamWriter = new StreamWriter(HttpContext.Response.Body, enc)) { streamWriter.Write(exec); streamWriter.Flush(); streamWriter.Close(); } var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Unexpected character encountered while parsing value."); } catch (NullReferenceException npe) { // Create a Result Object CalculatorService.Client.Exception ex = new CalculatorService.Client.Exception(); ex.ErrorCode = "InternalError"; ex.ErrorStatus = 500; ex.ErrorMessage = npe.Message; // Serialize it string exec = JsonConvert.SerializeObject(ex); // Send it back using POST HttpContext.Response.ContentType = "application/json"; Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); using (var streamWriter = new StreamWriter(HttpContext.Response.Body, enc)) { streamWriter.Write(exec); streamWriter.Flush(); streamWriter.Close(); } var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Object reference not set to an instance of an object."); } catch (System.Exception e) { // Create a Result Object CalculatorService.Client.Exception ex = new CalculatorService.Client.Exception(); ex.ErrorCode = "InternalError"; ex.ErrorStatus = 500; ex.ErrorMessage = e.Message; // Serialize it string exec = JsonConvert.SerializeObject(ex); // Send it back using POST HttpContext.Response.ContentType = "application/json"; Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); using (var streamWriter = new StreamWriter(HttpContext.Response.Body, enc)) { streamWriter.Write(exec); streamWriter.Flush(); streamWriter.Close(); } var logger = NLog.LogManager.GetCurrentClassLogger(); logger.Info("Object reference not set to an instance of an object."); } }