Exemplo n.º 1
0
        /// <summary>
        /// Gets either cached value or gets value and caches for future.
        /// </summary>
        /// <param name="objType">use object.GetType()</param>
        /// <returns>version number</returns>
        /// <exception cref="ArgumentException">if object does not have version attribute</exception>
        public static VersionNumbers GetVersion(Type objType)
        {
            VersionNumbers versionNo;

            if (TypeVersionCache.TryGetValue(objType, out versionNo))
            {
                return(versionNo);
            }

            versionNo = BuildVersionCache(objType);

            return(versionNo);
        }