コード例 #1
0
        /// <summary>
        ///     Returns a list of the model names that are assigned to the <paramref name="source" />.
        /// </summary>
        /// <param name="source">The object class.</param>
        /// <returns>
        ///     Returns a <see cref="IEnumerable{T}" /> representing the class model names assigned to the object class.
        /// </returns>
        public static IEnumerable <string> GetClassModelNames(this ITable source)
        {
            if (source == null)
            {
                return(null);
            }
            IObjectClass table = source as IObjectClass;

            if (table == null)
            {
                return(null);
            }

            return(table.GetClassModelNames());
        }
コード例 #2
0
        /// <summary>
        ///     Pre validates the given set of values.
        /// </summary>
        /// <param name="parameters">The parameters.</param>
        /// <param name="environmentManager">Provides access to all the current environments and settings of the current client.</param>
        /// <param name="utilities">
        ///     The utilities object that provides access to the properties and methods of a geoprocessing
        ///     objects.
        /// </param>
        protected override void UpdateParameters(Dictionary <string, IGPParameter> parameters, IGPEnvironmentManager environmentManager, IGPUtilities2 utilities)
        {
            // Retrieve the input parameter value.
            IGPValue value = utilities.UnpackGPValue(parameters["in_table"]);

            if (!value.IsEmpty())
            {
                // Create the domain based on the fields on the table.
                IObjectClass table = utilities.OpenTable(value);
                if (table != null)
                {
                    IGPCodedValueDomain codedValueDomain = new GPCodedValueDomainClass();

                    foreach (var modelName in table.GetClassModelNames())
                    {
                        codedValueDomain.AddStringCode(modelName, modelName);
                    }

                    IGPParameterEdit3 derivedFields = (IGPParameterEdit3)parameters["in_class_model_names"];
                    derivedFields.Domain = (IGPDomain)codedValueDomain;
                }
            }
        }
コード例 #3
0
ファイル: ClassAsyncExtensions.cs プロジェクト: wey12138/Wave
 /// <summary>
 ///     Returns a list of the model names that are assigned to the <paramref name="source" />.
 /// </summary>
 /// <param name="source">The object class.</param>
 /// <returns>
 ///     Returns a <see cref="IEnumerable{T}" /> representing the class model names assigned to the object class.
 /// </returns>
 public static IEnumerable <string> GetClassModelNamesAsync(this IObjectClass source)
 {
     return(Task.Wait(() => source.GetClassModelNames()));
 }