FileSystemWatcher
或类似人员调用的函数:
void OnFileChanged(string filename, ...)
{
var old3 = GetAssetByFilename(filename);
var new3 = LoadAsset(filename);
...
Utils.CopyFields(new3, old3);
...
}
LoadAsset
功能是不行的,有多个Load*
功能需要更改Asset
条款是禁止的答案 0 :(得分:2)
这似乎可以完成这项工作:
public static class Utils
{
public static void CopyFields<T>(T source, T destination)
{
var fields = source.GetType().GetFields();
foreach(var field in fields)
{
field.SetValue(destination, field.GetValue(source));
}
}
}