/// <summary> /// 保存属性与域的数据 /// </summary> public void Save() { foreach (var key in propertyDataNameDict.Keys) { UserDataManager.SetData(propertyDataNameDict[key][1], propertyDataNameDict[key][0], key.GetValue(this, new object[0])); } foreach (var key in fieldDataNameDict.Keys) { UserDataManager.SetData(fieldDataNameDict[key][1], fieldDataNameDict[key][0], key.GetValue(this)); } }
/// <summary> /// 加载属性、域和函数的数据 /// </summary> public void Load() { foreach (var key in propertyDataNameDict.Keys) { var val = UserDataManager.GetDataOrDef(propertyDataNameDict[key][1], propertyDataNameDict[key][0], propertyDefaultValueDict[key], key.PropertyType); key.SetValue(this, val, new object[0]); } foreach (var key in fieldDataNameDict.Keys) { var val = UserDataManager.GetDataOrDef(fieldDataNameDict[key][1], fieldDataNameDict[key][0], fieldDefaultValueDict[key], key.FieldType); key.SetValue(this, val); } foreach (var key in methodDataNameDict.Keys) { var val = UserDataManager.GetDataOrDef(methodDataNameDict[key][1], methodDataNameDict[key][0], methodDataNameDict[key], key.GetParameters()[0].ParameterType); key.Invoke(this, new object[] { val }); } }