You need to make sure you WCF web config is set up correctly
You will need to enable metat data for http gets, check you web config in the system.serviceModel -> behaviors -> serviceBehaviors -> behavior -> serviceMetadata
and make sure you have:
<serviceMetadata httpGetEnabled="true"/>
For Part 2, you can get the data, you can do something like
public MathResult GetResult(int a, int b) {
var status = new MathResult();
try {
var myBinding = new WSHttpBinding();
var myEndpoint =
new EndpointAddress(
new Uri("http://localhost:3980/"));
var myChannelFactory = new ChannelFactory<ICalculator>(myBinding, myEndpoint);
ICalculator client = myChannelFactory.CreateChannel();
status = client.DoMathJson(a,b);
} catch (Exception e) {
//do something proper here
}
return status;
}