コード例 #1
0
        /// <summary>
        /// Adds a key/value pair to the  <see cref="T:System.Collections.Generic.IDictionary`2"/> if the key does not already exist.
        /// </summary>
        /// <param name="key">The key of the element to add.</param>
        /// <param name="value">The value to be added, if the key does not already exist.</param>
        /// <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
        public TValue GetOrAdd(TKey key, TValue value)
        {
            FetchValue ii = new FetchValue(value);

            AddEntry(key, ref ii);
            return(ii.Value);
        }
コード例 #2
0
ファイル: Top.cs プロジェクト: t-vamshikrishnareddy/Suilder
        /// <summary>
        /// Compiles the fragment.
        /// </summary>
        /// <param name="queryBuilder">The query builder.</param>
        /// <param name="engine">The engine.</param>
        public virtual void Compile(QueryBuilder queryBuilder, IEngine engine)
        {
            if (!engine.Options.TopSupported)
            {
                throw new ClauseNotSupportedException("Top clause is not supported in this engine.");
            }

            queryBuilder.Write("TOP(");

            if (engine.Options.TopAsParameters || FetchValue is IQueryFragment)
            {
                queryBuilder.WriteValue(FetchValue);
            }
            else
            {
                queryBuilder.Write(FetchValue.ToString());
            }

            queryBuilder.Write(")");

            if (PercentValue)
            {
                queryBuilder.Write(" PERCENT");
            }

            if (WithTiesValue)
            {
                queryBuilder.Write(" WITH TIES");
            }
        }
コード例 #3
0
        /// <summary>
        /// Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
        /// </summary>
        public bool TryAdd(TKey key, TValue value)
        {
            FetchValue ii = new FetchValue(value);

            return(InsertResult.Inserted == AddEntry(key, ref ii));
        }