相关疑难解决方法(0)

在对象上实现更改跟踪的最佳方法是什么

我有一个包含5个属性的类.

如果任何值被分配给这些字段中的任何一个,则另一个值(例如IsDIrty)将改变为真.

public class Class1
{
    bool IsDIrty {get;set;}

    string Prop1 {get;set;}
    string Prop2 {get;set;}
    string Prop3 {get;set;}
    string Prop4 {get;set;}
    string Prop5 {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

.net c#

38
推荐指数
3
解决办法
3万
查看次数

C#使用Reflection来复制基类属性

我想使用Reflection将所有属性从MyObject更新到另一个属性.我遇到的问题是特定对象是从基类继承的,并且不更新那些基类属性值.

以下代码复制顶级属性值.

public void Update(MyObject o)
{
    MyObject copyObject = ...

    FieldInfo[] myObjectFields = o.GetType().GetFields(
    BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);

    foreach (FieldInfo fi in myObjectFields)
    {
        fi.SetValue(copyObject, fi.GetValue(o));
    }
}
Run Code Online (Sandbox Code Playgroud)

我想看看是否有更多BindingFlags属性我可以用来帮助但无济于事.

c# reflection copy

26
推荐指数
3
解决办法
4万
查看次数

标签 统计

c# ×2

.net ×1

copy ×1

reflection ×1