b02c2af890c916e12e3bcd104045f8e57fbdf7ca
[mono.git] / mono / tests / bug-2907.cs
1 using System;
2 using System.IO;
3 using System.Xml.Serialization;
4
5 class Test
6 {
7         static public T DeserializeFromString<T>(string xml) where T : class
8         {
9
10             if (String.IsNullOrEmpty(xml))
11             {
12                 return null;
13             }
14
15             StringReader reader = null;
16             T deserializedObject = null;
17             try
18             {
19                 reader = new StringReader(xml);
20                 XmlSerializer serializer = new XmlSerializer(typeof(T));
21                 deserializedObject = serializer.Deserialize(reader) as T;
22             }
23             finally
24             {
25                 if (null != reader)
26                 {
27                     reader.Close();
28                 }
29             }
30             return deserializedObject;
31         }
32
33         static void Main ()
34         {
35             string myXML = @"<?xml version=""1.0"" encoding=""utf-8""?><TASK><OptionA/></TASK>";
36             TASK data = DeserializeFromString<TASK>(myXML);
37             System.Console.WriteLine(data);
38         }
39 }