Пример #1
0
        }         // ctor

        internal static bool TryResolveByDataSetName(IServiceProvider sp, string datasetName, bool throwException, out PpsDataSetDefinition dataset)
        {
            if (datasetName != null)
            {
                var info = sp.GetService <IPpsDataSetProvider>(throwException);
                dataset = info?.TryGetDataSetDefinition(datasetName, throwException);
                return(dataset != null);
            }
            else if (throwException)
            {
                throw new ArgumentNullException(nameof(datasetName));
            }

            dataset = null;
            return(false);
        }         // func TryResolveByDataSetName
Пример #2
0
        }         // func TryResolveByDataSetName

        private static bool TryResolveByFunction(IServiceProvider sp, Func <object> getDataSet, out PpsDataSetDefinition dataset)
        {
            switch (getDataSet?.Invoke())
            {
            case PpsDataSet ds:
                dataset = ds.DataSetDefinition;
                return(true);

            case PpsDataSetDefinition ds:
                dataset = ds;
                return(true);

            default:
                dataset = null;
                return(false);
            }
        }         // func TryResolveByFunction
Пример #3
0
        }         // ctor

        private static PpsDataTableDefinition ResolveDataTable(PpsDataSetDefinition dataset, string tableName)
        => dataset.FindTable(tableName) ?? throw new ArgumentOutOfRangeException(nameof(tableName), tableName, "Could not resolve table.");
Пример #4
0
        }         // ctor

        /// <summary></summary>
        /// <param name="dataset"></param>
        public PpsDataSetResolver(PpsDataSetDefinition dataset)
        {
            this.dataset = dataset ?? throw new ArgumentNullException(nameof(dataset));
        }         // ctor
Пример #5
0
        }         // ctor

        /// <summary></summary>
        /// <param name="dataset"></param>
        /// <returns></returns>
        public override PpsDataTableDefinition Clone(PpsDataSetDefinition dataset)
        => new PpsDataTableServerDefinition((PpsDataSetServerDefinition)dataset, this);