分析discuz nt2.0的DefaultConfigFileManager.cs文件

 1 public   static  IConfigInfo DeserializeInfo( string  configfilepath, Type configtype)
 2          {
 3
 4            IConfigInfo iconfiginfo;
 5            FileStream fs = null;
 6            try
 7            {
 8                fs = new FileStream(configfilepath, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
 9                XmlSerializer serializer = new XmlSerializer(configtype);
10                iconfiginfo = (IConfigInfo)serializer.Deserialize(fs);
11            }

12            catch (Exception ex)
13            {
14                throw ex;
15            }

16            finally
17            {
18                if (fs != null)
19                {
20                    fs.Close();
21                }

22            }

23
24            return iconfiginfo;
25        }

FileStream 构造函数 (Path, FileMode, FileAccess, FileShare)

path
当前 FileStream 对象将封装的文件的相对路径或绝对路径。
mode
FileMode 常数,确定如何打开或创建文件。
access
FileAccess 常数,它确定 FileStream 对象访问文件的方式。这将获取 FileStream 对象的 CanReadCanWrite 属性。如果 path 指定磁盘文件,则 CanSeektrue
share
FileShare 常数,确定文件如何由进程共享。【允许随后打开文件读取或写入。如果未指定此标志,则文件关闭前,任何打开该文件以进行读取或写入的请求(由此进程或另一进程发出的请求)都将失败。但是,如果指定了此标志,仍可能需要附加权限才能访问文件。】

XmlSerializer 构造函数 (Type)

参数

type
XmlSerializer 可序列化的对象的类型。
  XmlSerializer类提供了把对象串行化为XML文件及把XML文档非串行化为对象的方法。它还能让用户指定对象如何转化为XML。可以把将被串行化的对象的类型作为类构造函数的参数。下面的C# 代码说明了构造函数的用法。

你可能感兴趣的:(manager)