Beispiel #1
0
        /// <summary>
        /// Fills (or refills) the data. The data source is represented by this instance, the destination table is provided in the argument <paramref name="destinationTable" />.
        /// </summary>
        /// <param name="destinationTable">The destination table.</param>
        public void FillData(Data.DataTable destinationTable)
        {
            if (null == destinationTable)
            {
                throw new ArgumentNullException("destinationTable");
            }

            int reentrancyCount = Interlocked.Increment(ref _updateReentrancyCount);

            if (1 == reentrancyCount)
            {
                try
                {
                    using (var token = destinationTable.SuspendGetToken())
                    {
                        var tableConnector = new AltaxoTableConnector(destinationTable);
                        _dataQuery.ReadDataFromOleDbConnection(tableConnector.ReadAction);
                    }
                }
                finally
                {
                    Interlocked.Decrement(ref _updateReentrancyCount);
                }
            }
        }
Beispiel #2
0
		/// <summary>
		/// Fills (or refills) the data. The data source is represented by this instance, the destination table is provided in the argument <paramref name="destinationTable" />.
		/// </summary>
		/// <param name="destinationTable">The destination table.</param>
		public void FillData(Data.DataTable destinationTable)
		{
			if (null == destinationTable)
				throw new ArgumentNullException("destinationTable");

			int reentrancyCount = Interlocked.Increment(ref _updateReentrancyCount);
			if (1 == reentrancyCount)
			{
				try
				{
					using (var token = destinationTable.SuspendGetToken())
					{
						var tableConnector = new AltaxoTableConnector(destinationTable);
						this._dataQuery.ReadDataFromOleDbConnection(tableConnector.ReadAction);
					}
				}
				finally
				{
					Interlocked.Decrement(ref _updateReentrancyCount);
				}
			}
		}