[System] Removal of the NET_2_0 in the source code
[mono.git] / mcs / class / System / System.Net.Mail / AlternateView.cs
index 64218bb9bcc508999fe3e322fde8e0de18742ddd..2a84e67de361acc803f459bb1f975057bce62f72 100644 (file)
@@ -28,8 +28,6 @@
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-#if NET_2_0
-
 using System.IO;
 using System.Net.Mime;
 using System.Text;
@@ -105,8 +103,9 @@ namespace System.Net.Mail {
                public static AlternateView CreateAlternateViewFromString (string content, ContentType contentType)
                {
                        if (content == null)
-                               throw new ArgumentNullException ();
-                       MemoryStream ms = new MemoryStream (Encoding.UTF8.GetBytes (content));
+                               throw new ArgumentNullException ("content");
+                       Encoding enc = contentType.CharSet != null ? Encoding.GetEncoding (contentType.CharSet) : Encoding.UTF8;
+                       MemoryStream ms = new MemoryStream (enc.GetBytes (content));
                        AlternateView av = new AlternateView (ms, contentType);
                        av.TransferEncoding = TransferEncoding.QuotedPrintable;
                        return av;
@@ -115,9 +114,14 @@ namespace System.Net.Mail {
                public static AlternateView CreateAlternateViewFromString (string content, Encoding encoding, string mediaType)
                {
                        if (content == null)
-                               throw new ArgumentNullException ();
+                               throw new ArgumentNullException ("content");
+                       if (encoding == null)
+                               encoding = Encoding.UTF8;
                        MemoryStream ms = new MemoryStream (encoding.GetBytes (content));
-                       AlternateView av = new AlternateView (ms, mediaType);
+                       ContentType ct = new ContentType ();
+                       ct.MediaType = mediaType;
+                       ct.CharSet = encoding.HeaderName;
+                       AlternateView av = new AlternateView (ms, ct);
                        av.TransferEncoding = TransferEncoding.QuotedPrintable;
                        return av;
                }
@@ -133,5 +137,3 @@ namespace System.Net.Mail {
                #endregion // Methods
        }
 }
-
-#endif // NET_2_0