-
Notifications
You must be signed in to change notification settings - Fork 41
TryGetOptions
Ngoc Nicholas edited this page Nov 4, 2025
·
3 revisions
AirtableBase.TryGetOptions
Get the FieldModel options without throwing.
Namespace: AirtableApiClient
Assembly: AirtableApiClient.dll
public static bool TryGetOptions<TOpts>(this FieldModel f, out TOpts? options) where TOpts : classType: FieldModel<TOpts>
f.ModelOptions if it's not null.
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Linq;
using System.Threading.Tasks;
using System.Collections.Generic;
using System.Text.Json;
using System.Text.Json.Serialization;
using AirtableApiClient;
readonly string appKeyOrAccessToken= YOUR_APP_KEY_OR_ACCESS_TOKEN;
readonly string baseId = YOUR_BASE_ID; using (AirtableBase airtableBase = new AirtableBase(appKeyOrAccessToken, baseId))
{
BaseSchemaInclude[] scInclude = new BaseSchemaInclude[1];
scInclude[0] = BaseSchemaInclude.visibleFieldIds;
// Base ID passed in AirtableBase ctor earlier will be used so no need to pass in baseId here.
Task<AirtableGetBaseSchemaResponse> task = airtableBase.GetBaseSchema(baseId: null, scInclude);
var response = await task;
if (!response.Success)
{
// report error
}
else
{
IEnumerable<TableModel>? tables = response!.Tables;
Assert.IsNotNull(tables);
Assert.IsTrue(tables.Count() > 0);
// Assume that we knew the field below is a LookupModelOptions, let's get its value:
if (tables[0].Fields[18].TryGetOptions<LookupModelOptions>(out var opts))
{
Console.WriteLine("Type of Result is:{0}", opts.Result!.GetType().Name);
}
}
}- AirtableBase
- AirtableRecordList
-
AirtableRecordList
<T>
1. AirtableRecord<T> - AirtableUpSertRecordList
- AirtableUpSertRecordList
<T> - AirtableApiException
-
AirtableApiResponse
- AirtableGetUserIdAndScopesResponse
- AirtableListRecordsResponse
- AirtableListRecordsResponse
<T> - AirtableRetrieveRecordResponse
- AirtableRetrieveRecordResponse
<T> - AirtableCreateUpdateReplaceRecordResponse
- AirtableCreateReplaceRecordResponse
<T> - AirtableCreateReplaceMultipleRecordsResponse
<T> - AirtableCreateUpdateReplaceMultipleRecordsResponse
- AirtableDeleteRecordResponse
- AirtableCreateUpdateCommentResponse
- AirtableListCommentsResponse
- AirtableDeleteCommentResponse
- AirtableListWebhooksResponse
- AirtableListPayloadsResponse
- AirtableCreateWebhookResponse
- AirtableDeleteWebhookResponse
- AirtabeEnableWebhookNotificationsResponse
- AirtabeRefreshWebhookResponse
- AirtableListBasesResponse
- AirtableGetBaseSchemaResponse
- AirtableCreateBaseResponse
- CommentList
- IdFields
- PerformUpsert
- UserIdAndScopes
- Webhooks
- PayloadList
- WebhooksNotification
-
TableModelList
-
TableModel
- DateDependencySettings
- ViewModel
- FieldModel
-
FieldModel<TModelOptions>
- aitextfieldmodel-and-aitextmodeloptions
- AttachmentFieldModel-and-AttachmentModelOptions
- AutoNumberFieldModel
- BarcodeFieldModel
- ButtonFieldModel
- CheckboxFieldModel
- CollaboratorFieldModel
- CountFieldModel-and-CountModelOptions
- CreatedByFieldModel
- CreatedTimeFieldModel-and-CreatedTimeModelOptions
- CurrencyFieldModel
- DateFieldModel
- DateTimeFieldModel
- DurationFieldModel
- EmailFieldModel
- FormulaFieldModel--and-FormulaModelOptions
- LastModifiedByFieldModel
- LastModifiedTimeFieldModel-and-LastModifiedTimeModelOptions
- LinkToAnotherRecordFieldModel-and-LinkToAnotherRecordModelOptions
- LongTextFieldModel
- LookupFieldModel-and-LookupModelOptions
- MultipleCollaboratorFieldModel
- MultipleSelectFieldModel-and-MultipleSelectdModelOptions
- NumberFieldModel-and-NumberModelOptions
- PercentFieldModel-and-PercentModelOptions)
- PhoneFieldModel
- RatingFieldModel
- RichTextFieldModel
- RollupFieldModel-and-RollupModelOptions
- SingleLineTextFieldModel
- SingleSelectFieldModel-and-SingleSelectdModelOptions
- SyncSourceFieldModel-and-SyncSourceModelOptions
- UrlFieldModel
- UnknownFieldModel
- FieldModelExtensions
-
TableModel
-
TableConfig
-
IFieldConfig
- Field
-
FieldConfig
- AttachmentFieldConfig
- BarcodeFieldConfig
- CheckboxFieldConfig
- CollaboratorFieldConfig
- CurrencyFieldConfig
- DateFieldConfig
- DateTimeFieldConfig
- DurationFieldConfig
- EmailFieldConfig
- LinkToAnotherRecordFieldConfig-and-LinkToAnotherRecordConfigOptions
- LongTextFieldConfig
- MultipleCollaboratorFieldConfig
- MultipleSelectFieldConfig-and-MultipleSelectdConfigOptions
- NumberFieldConfig-and-NumberConfigOptions
- PercentFieldConfig-and-PercentConfigOptions
- PhoneFieldConfig
- RatingFieldConfig
- RichTextFieldConfig
- SingleLineTextFieldConfig
- SingleSelectFieldConfig-and-SingleSelectdConfigOptions
- UrlFieldConfig
-
IFieldConfig
[Airtable]: http://www.airtable.com