SendExpression IUrlExpression.FormData <T>(T input) { this.As <IUrlExpression>().Input(input); Body.WriteFormData(input); return(new SendExpression(Context)); }
SendExpression IUrlExpression.FormData <T>(T target) { this.As <IUrlExpression>().Input(target); var values = new Dictionary <string, string>(); typeof(T).GetProperties().Where(x => x.CanWrite && x.CanRead).Each(prop => { var rawValue = prop.GetValue(target, null); values.Add(prop.Name, rawValue?.ToString() ?? string.Empty); }); typeof(T).GetFields().Each(field => { var rawValue = field.GetValue(target); values.Add(field.Name, rawValue?.ToString() ?? string.Empty); }); Body.WriteFormData(values); return(new SendExpression(Context)); }