private string GetParameterString(ServiceOpParameter parameter) { // TODO: Encode and convert smart quotes var paramValue = parameter.Value; var paramTag = "param"; if (parameter.IsString) { paramTag = "paramstring"; } return($"<{paramTag}>{paramValue}</{paramTag}>"); }
public static Task <TResult> Execute <TResult>(this IServiceOpService serviceOpService, string serviceOpName, CancellationToken cancellationToken, params object[] parameters) { var serviceOpParameters = new List <ServiceOpParameter>(parameters.Length); foreach (var param in parameters) { var paramValue = param; // Check if the object is already a service op parameter. // If it is, we just return it directly. Otherwise create a SerivceOpParameter for it. var serviceOpParameter = paramValue switch { ServiceOpParameter premadeParameter => premadeParameter, _ => new ServiceOpParameter(paramValue, IsString: paramValue is string) }; serviceOpParameters.Add(serviceOpParameter); } return(serviceOpService.Execute <TResult>(serviceOpName, serviceOpParameters, cancellationToken)); } }