public static IList <object> CalculateDataTableDependency(object obj, ISurrogateDependenciesContext dependencyContext)
        {
            var dataTable = obj as DataTable;

            if (dataTable.DataSet != null)
            {
                return(new object[] { dataTable.DataSet });
            }
            return(NO_DATASET_DEPEMDENCY);
        }
示例#2
0
        public static IList <object> CalculateDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            var adoRecordSet = value as ADORecordSetHelper;

            if (adoRecordSet.ActiveConnection != null)
            {
                return(new object[] { adoRecordSet.ActiveConnection });
            }
            return(EMPTY_LIST);
        }
        public IList <object> CalculateDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            IList <object> dependencies = null;

            PromiseUtils.CalculateDependencies(value, _oType, ref dependencies);
            if (dependencies == null)
            {
                dependencies = EMPTY_LIST;
            }
            return(dependencies);
        }
    public static IList <object> CalculateDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
    {
        var cmd = value as System.Data.Common.DbCommand;

        if (cmd.Connection == null)
        {
            return(EMPTY_LIST);
        }
        else
        {
            return new object[] { cmd.Connection }
        };
    }
        public static IList <object> CalculateDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            var fldArr = GetFieldInfosIncludingBaseClasses(value.GetType(), BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public);
            var res    = new object[fldArr.Count];

            for (int i = 0; i < res.Length; i++)
            {
                var currentField = fldArr[i];
                if (typeof(IStateObject).IsAssignableFrom(currentField.FieldType))
                {
                    res[i] = currentField.GetValue(value);
                }
                else if (currentField.FieldType.IsSerializable && typeof(MulticastDelegate).IsAssignableFrom(currentField.FieldType))
                {
                    //Skip do no support delegate fields
                }
                else if (SurrogatesDirectory.IsSurrogateRegistered(currentField.FieldType))
                {
                    res[i] = currentField.GetValue(value);
                }
            }
            return(res);
        }
 public static IList <object> CalculateXmlDocumentDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
 {
     return(NO_DEPENDENCIES);
 }
示例#7
0
 public static IList <object> CalculateDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
 {
     return(EMPTY_LIST);
 }
        public IList <object> CalculateDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            var delegateObj = ((MulticastDelegate)value);

            return(new object[] { delegateObj.Target });
        }
示例#9
0
        public static IList <object> CalculateDataTableDependency(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            var table = value as DataRow;

            return(new object[] { table.Table });
        }
示例#10
0
        public static IList <object> CalculateXmlNodeDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            var document = (value as XmlElement).OwnerDocument;

            return(new object[] { document });
        }
示例#11
0
        public static IList <object> CalculateDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            var dataBinding = value as DataBinding;

            return(new object[] { dataBinding.DataSourceReference, dataBinding.ObjReference });
        }
        public static IList <object> CalculateDataTableEventsDependencies(object obj, ISurrogateDependenciesContext dependencyContext)
        {
            var dataTable = obj as DataTable;
            var result    = new List <object>();

            //The event handlers are saved in the storage
            var rowChanging = dependencyContext.ProcessEventDelegate <DataTable>("onRowChangingDelegate", "RowChanging", dataTable);

            if (rowChanging != null)
            {
                result.Add(rowChanging);
            }

            var rowDeleting = dependencyContext.ProcessEventDelegate <DataTable>("onRowDeletingDelegate", "RowDeleting", dataTable);

            if (rowDeleting != null)
            {
                result.Add(rowDeleting);
            }

            var tableClearing = dependencyContext.ProcessEventDelegate <DataTable>("onTableClearingDelegate", "TableClearing", dataTable);

            if (tableClearing != null)
            {
                result.Add(tableClearing);
            }

            return(result);
        }
示例#13
0
        public static IList <object> CalculateDataViewDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            var dataTable = (value as DataView).Table;

            return(new object[] { dataTable });
        }
示例#14
0
        public static IList <object> CalculateDataRowViewDependencies(object value, ISurrogateDependenciesContext dependenciesContext)
        {
            var dataRowView = (value as DataRowView);

            return(new object[] { dataRowView.DataView, dataRowView.Row });
        }