public static void Main()
var client = new GeosClient("myusername", "mypassword", "geosuri");
var user = new UserInfo();
var response = client.Register(user);
public GeosClient(string userName, string password, string endpoint)
public RegisterGeosResponse Register(UserInfo user)
var xmlMessage = CreateRegisterMessage(user);
var xmlResponse = SendSoapMessage(xmlMessage);
var response = new RegisterGeosResponse(xmlResponse);
private XDocument CreateRegisterMessage(UserInfo user)
private XDocument SendSoapMessage(XDocument xml)
var soapClient = new SoapClient();
soapClient.SendMessage();
public XDocument SendMessage()
HttpWebResponse response = null;
return HttpWebResponseToXml(response);
private XDocument HttpWebResponseToXml(HttpWebResponse response)
using (StreamReader sr = new StreamReader(response.GetResponseStream()))
return XDocument.Parse(sr.ReadToEnd());
public class RegisterGeosResponse : BaseGeosResponse
public RegistrationResponses Status;
public string RegisterSpecificProperty;
public RegisterGeosResponse(XDocument xml):base(xml) {}
protected override void Parse(XDocument xml)
public abstract class BaseGeosResponse
public BaseGeosResponse(XDocument xml)
protected abstract void Parse(XDocument xml);
public enum RegistrationResponses