代码如下:
using System;
namespace Data_Exchange_Client
{
/// <summary>
/// 客户端配置类
/// </summary>
public class Config
{ public string BaseDatabase
{
get
{
return mBaseDatabase;
}
set
{
mBaseDatabase = value.Trim ();
}
}
/// <summary>
/// 轮询时间间隔(秒)
/// </summary>
public int CheckTimerInterval
{
get
{
return mCheckTimerInterval;
}
set
{
mCheckTimerInterval = value;
}
}
/// <summary>
/// 当前数据库地址
/// </summary>
public string DataIP
{
get
{
return mDataIP;
}
set
{
mDataIP = value.Trim ();
}
}
/// <summary>
/// 数据库密码
/// </summary>
public string PWD
{
get
{
return mPWD;
}
set
{
mPWD = value.Trim ();
}
}
/// <summary>
/// 数据库用户ID
/// </summary>
public string UID
{
get
{
return mUID;
}
set
{
mUID = value.Trim ();
}
}
/// <summary>
/// 备份周期
/// </summary>
public string RunPeriod
{
get
{
return mRunPeriod;
}
set
{
mRunPeriod= value.Trim();
}
}
/// <summary>
/// 备份周期单位
/// </summary>
public string RunPeriodUnit
{
get
{
return mRunPeriodUnit;
}
set
{
mRunPeriodUnit = value.Trim();
}
}
/// <summary>
/// 备份具体时间 00:00:00
/// </summary>
public string RunTime
{
get
{
return mRunTime;
}
set
{
mRunTime = value;
}
}
/// <summary>
/// 第几天运行可以是周和天
/// </summary>
public int RunDay
{
get
{
return mRunDay;
}
set
{
mRunDay = value;
}
}
/// <summary>
/// 备份文件类型 true为完全 false 为增量
/// </summary>
public bool BackUPType
{
get
{
return mBackUPType;
}
set
{
mBackUPType = value;
}
}
/// <summary>
/// 备份文件路径
/// </summary>
public string FileDir
{
get
{
return mFileDir;
}
set
{
mFileDir = value.Trim();
}
}
/// <summary>
/// 备份文件配置时间
/// </summary>
public System.DateTime ConfigTime
{
get
{
return mConfigTime;
}
set
{
mConfigTime = value;
}
}
private System.DateTime mConfigTime;
private string mBaseDatabase;
private int mCheckTimerInterval = 1*60*1000;
private string mDataIP;
private string mPWD;
private string mUID;
private string mRunPeriod;
private string mRunPeriodUnit;
private int mRunDay;
private string mRunTime;
private bool mBackUPType;
private string mFileDir;
}
}
序列化代码如下:
public SetupConfig(ref Config ConfigObjectName, string ConfigName)
{
try
{
FileStream fs1 = new FileStream(ConfigName ,FileMode.Open );
XmlReader reader = new XmlTextReader (fs1) ;
XmlSerializer ser = new XmlSerializer(typeof(Config));
ConfigObjectName =(Config) ser.Deserialize(reader); //在这句报错
fs1.Close ();
mStatus = 0;
}
catch
{
mStatus =1;//序列化错误
}
}
using System;
namespace Data_Exchange_Client
{
/// <summary>
/// 客户端配置类
/// </summary>
public class Config
{ public string BaseDatabase
{
get
{
return mBaseDatabase;
}
set
{
mBaseDatabase = value.Trim ();
}
}
/// <summary>
/// 轮询时间间隔(秒)
/// </summary>
public int CheckTimerInterval
{
get
{
return mCheckTimerInterval;
}
set
{
mCheckTimerInterval = value;
}
}
/// <summary>
/// 当前数据库地址
/// </summary>
public string DataIP
{
get
{
return mDataIP;
}
set
{
mDataIP = value.Trim ();
}
}
/// <summary>
/// 数据库密码
/// </summary>
public string PWD
{
get
{
return mPWD;
}
set
{
mPWD = value.Trim ();
}
}
/// <summary>
/// 数据库用户ID
/// </summary>
public string UID
{
get
{
return mUID;
}
set
{
mUID = value.Trim ();
}
}
/// <summary>
/// 备份周期
/// </summary>
public string RunPeriod
{
get
{
return mRunPeriod;
}
set
{
mRunPeriod= value.Trim();
}
}
/// <summary>
/// 备份周期单位
/// </summary>
public string RunPeriodUnit
{
get
{
return mRunPeriodUnit;
}
set
{
mRunPeriodUnit = value.Trim();
}
}
/// <summary>
/// 备份具体时间 00:00:00
/// </summary>
public string RunTime
{
get
{
return mRunTime;
}
set
{
mRunTime = value;
}
}
/// <summary>
/// 第几天运行可以是周和天
/// </summary>
public int RunDay
{
get
{
return mRunDay;
}
set
{
mRunDay = value;
}
}
/// <summary>
/// 备份文件类型 true为完全 false 为增量
/// </summary>
public bool BackUPType
{
get
{
return mBackUPType;
}
set
{
mBackUPType = value;
}
}
/// <summary>
/// 备份文件路径
/// </summary>
public string FileDir
{
get
{
return mFileDir;
}
set
{
mFileDir = value.Trim();
}
}
/// <summary>
/// 备份文件配置时间
/// </summary>
public System.DateTime ConfigTime
{
get
{
return mConfigTime;
}
set
{
mConfigTime = value;
}
}
private System.DateTime mConfigTime;
private string mBaseDatabase;
private int mCheckTimerInterval = 1*60*1000;
private string mDataIP;
private string mPWD;
private string mUID;
private string mRunPeriod;
private string mRunPeriodUnit;
private int mRunDay;
private string mRunTime;
private bool mBackUPType;
private string mFileDir;
}
}
序列化代码如下:
public SetupConfig(ref Config ConfigObjectName, string ConfigName)
{
try
{
FileStream fs1 = new FileStream(ConfigName ,FileMode.Open );
XmlReader reader = new XmlTextReader (fs1) ;
XmlSerializer ser = new XmlSerializer(typeof(Config));
ConfigObjectName =(Config) ser.Deserialize(reader); //在这句报错
fs1.Close ();
mStatus = 0;
}
catch
{
mStatus =1;//序列化错误
}
}
{
get
{
return mConfigTime;
}
set
{
mConfigTime = value;
}
去掉就没有问题了,或者是把System.DateTime 改成 string 就没有问题了??
我只是想知道为什么会出错??? }
<Config>
<ConfigTime>2006-10-20 10:00</ConfigTime>
<CheckTimerInterval>10</CheckTimerInterval>
<DataIP>192.168.0.73</DataIP>
<BaseDatabase>coos2005</BaseDatabase>
<UID>sa</UID>
<PWD>123</PWD>
<RunPeriod>1</RunPeriod>
<RunPeriodUnit>day</RunPeriodUnit>
<RunDay>0</RunDay>
<RunTime>00:00:00</RunTime>
<BackUpType>true</BackUpType>
<FileDir>D://</FileDir>
</Config>
这个是反序列化的xml文件