我在 asp.net 缓存中有一个来自 UserControl 的缓存控件对象。 我喜欢访问我的控件并制作它的副本以自由更改它而不会对基本缓存控件产生任何影响。
最佳答案
嗨 我找到了我要找的代码。 我把它放在这里也许它对你也有帮助。
/// <summary>
/// this method makes a copy of object as a clone function
/// </summary>
/// <param name="o"></param>
/// <returns></returns>
public static object Clone_Control(object o)
{
Type type = o.GetType();
PropertyInfo[] properties = type.GetProperties();
Object retObject = type.InvokeMember("", System.Reflection.BindingFlags.CreateInstance, null, o, null);
foreach (PropertyInfo propertyInfo in properties)
{
if (propertyInfo.CanWrite)
{
propertyInfo.SetValue(retObject, propertyInfo.GetValue(o, null), null);
}
}
return retObject;
}
关于c# - 创建 ASP.NET Control 对象的副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5555674/