private string getInitString(IPortType type, object value) { string initStr = " = "; switch (type.Name) { case PortTypes.Number: if (value is Double numValue) { initStr += numValue.ToString(CultureInfo.InvariantCulture); } else { initStr += "Double.NaN"; } break; case PortTypes.String: initStr += "\"" + value.ToString() + "\""; break; default: // all kinds of integer values initStr += value.ToString().ToLower(); break; } return(initStr); }
public override void CloseConnection() { ((IClientChannel)proxy)?.Close(); proxy = null; factory?.Close(); factory = null; }
public OneSClient Connect(string url, string user, string pass = "") { CloseConnection(); factory = new ChannelFactory <IPortType>(binding, new EndpointAddress(url)); factory.Credentials.UserName.UserName = user; factory.Credentials.UserName.Password = pass; proxy = factory.CreateChannel(); return(this); }
private string getInitString(IPortType type, object value) { string initStr = " = "; switch (type.Name) { case PortTypes.Number: System.Diagnostics.Trace.Assert(value is Double); initStr += ((Double)value).ToString(CultureInfo.InvariantCulture); break; case PortTypes.String: initStr += "\"" + value.ToString().Replace("\n", "\\n"). Replace("\r", "\\r"). Replace("\"", "\\\"") + "\""; break; default: // all kinds of integer values initStr += value.ToString().ToLower(); break; } return(initStr); }
private string getTypeString(IPortType type) { string typeStr = type.Name; switch (typeStr) { case PortTypes.Number: typeStr = "double"; break; case PortTypes.Int64: typeStr = "long"; break; case PortTypes.Integer: typeStr = "int"; break; default: // byte, bool, or string typeStr = type.Name.ToLower(); break; } return(typeStr); }