1717#endregion
1818
1919using System ;
20+ using JetBrains . Annotations ;
2021using RestSharp . Validation ;
2122
2223namespace RestSharp
@@ -32,7 +33,7 @@ public Parameter(string name, object value, ParameterType type)
3233 Ensure . NotEmpty ( name , nameof ( name ) ) ;
3334
3435 Name = name ;
35- Value = value ;
36+ Value = type != ParameterType . UrlSegment ? value : value . ToString ( ) . Replace ( "%2F" , "/" ) . Replace ( "%2f" , "/" ) ;
3637 Type = type ;
3738 }
3839
@@ -41,12 +42,12 @@ public Parameter(string name, object value, ParameterType type)
4142 /// <summary>
4243 /// Name of the parameter
4344 /// </summary>
44- public string Name { get ; set ; }
45+ public string ? Name { get ; set ; }
4546
4647 /// <summary>
4748 /// Value of the parameter
4849 /// </summary>
49- public object Value { get ; set ; }
50+ public object ? Value { get ; set ; }
5051
5152 /// <summary>
5253 /// Type of the parameter
@@ -61,7 +62,7 @@ public Parameter(string name, object value, ParameterType type)
6162 /// <summary>
6263 /// MIME content type of the parameter
6364 /// </summary>
64- public string ContentType { get ; set ; }
65+ public string ? ContentType { get ; set ; }
6566
6667 /// <summary>
6768 /// Return a human-readable representation of this parameter
@@ -85,6 +86,7 @@ public override bool Equals(object obj)
8586 => ! ReferenceEquals ( null , obj )
8687 && ( ReferenceEquals ( this , obj ) || obj . GetType ( ) == this . GetType ( ) && Equals ( ( Parameter ) obj ) ) ;
8788
89+ // ReSharper disable NonReadonlyMemberInGetHashCode
8890 public override int GetHashCode ( )
8991 {
9092 unchecked
@@ -98,18 +100,19 @@ public override int GetHashCode()
98100 return hashCode ;
99101 }
100102 }
103+ // ReSharper enable NonReadonlyMemberInGetHashCode
101104 }
102105
103106 public class XmlParameter : Parameter
104107 {
105- public XmlParameter ( string name , object value , string xmlNamespace = null ) : base ( name , value , ParameterType . RequestBody )
108+ public XmlParameter ( string name , object value , string ? xmlNamespace = null ) : base ( name , value , ParameterType . RequestBody )
106109 {
107110 XmlNamespace = xmlNamespace ;
108111 DataFormat = DataFormat . Xml ;
109112 ContentType = Serialization . ContentType . Xml ;
110113 }
111114
112- public string XmlNamespace { get ; }
115+ public string ? XmlNamespace { get ; }
113116 }
114117
115118 public class JsonParameter : Parameter
0 commit comments