zoukankan      html  css  js  c++  java
  • Linq-Detach方法--删除对象的时候如有关系导制错误去关系

     public static void Detatch(Object entity)
            {
                Type t = entity.GetType();
                System.Reflection.PropertyInfo[] properties = t.GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance);
                foreach (var property in properties)
                {
                    string name = property.Name;
                    if (property.PropertyType.IsGenericType &&
                    property.PropertyType.GetGenericTypeDefinition() == typeof(EntitySet<>))
                    {
                        property.SetValue(entity, null, null);
                    }
                }
                System.Reflection.FieldInfo[] fields = t.GetFields(System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
                foreach (var field in fields)
                {
                    string name = field.Name;
                    if (field.FieldType.IsGenericType &&
                    field.FieldType.GetGenericTypeDefinition() == typeof(EntityRef<>))
                    {
                        field.SetValue(entity, null);
                    }
                }
                System.Reflection.EventInfo eventPropertyChanged = t.GetEvent("PropertyChanged");
                System.Reflection.EventInfo eventPropertyChanging = t.GetEvent("PropertyChanging");
                if (eventPropertyChanged != null)
                {
                    eventPropertyChanged.RemoveEventHandler(entity, null);
                }
                if (eventPropertyChanging != null)
                {
                    eventPropertyChanging.RemoveEventHandler(entity, null);
                }
            }

  • 相关阅读:
    四 闭包函数、装饰器
    三 名称空间与作用域
    二 函数对象、函数嵌套
    一 函数定义
    函数路线
    Django_rest_framework分页
    Django Rest framework序列化流程
    Django Rest framework的限流实现流程
    mysql 数据库查看表的信息
    java JDBC编程流程步骤
  • 原文地址:https://www.cnblogs.com/wahaccp/p/3254853.html
Copyright © 2011-2022 走看看