Using System. xml. serialization; Using System. IO; Using System. xml; Using System. text; Namespace Testproject1.xml { Public Class Xmlrepository <troot> { String _ Filepath; Public Xmlrepository ( String Filepath ){ This . _ Filepath = filepath;} xmlserializer _ serializer; xmlserializer serializer { Get { If (_ Serializer! = Null ) Return _ Serializer; _ serializer = New Xmlserializer ( Typeof (Troot )); Return _ Serializer ;}} troot _ root; Public Troot root { Get { If (_ Root! = Null ) Return _ Root; Using (VAR Sm = file. Open (_ filepath, filemode. Open, fileaccess. Read, fileshare. readwrite) {_ root = (troot) serializer. deserialize (SM );} Return _ Root ;}} Public Void Save (){ Using (VAR Sm = file. Open (_ filepath, filemode. truncate )){// You can write it like this <? XML version = "1.0" encoding = "UTF-8"?> Xmltextwriter write = New Xmltextwriter (SM, encoding. utf8 ); // Set the format indent Write. Formatting = formatting. indented; serializer. serialize (write, root );}}}}