Aracılığıyla paylaş


Azure Data Studio genişletilebilirliği

Önemli

Azure Data Studio 28 Şubat 2026 tarihindedevreden çıkarılıyor. Visual Studio Codekullanmanızı öneririz. Visual Studio Code'a geçiş hakkında daha fazla bilgi için Azure Data Studio'ya neler oluyor? adresini ziyaret edin.

Azure Data Studio,kullanıcı deneyimini özelleştirmek ve bu özelleştirmeleri tüm kullanıcı topluluğunun kullanımına açmak için çeşitli genişletilebilirlik mekanizmalarına sahiptir. Temel Azure Data Studio platformu Visual Studio Code üzerine kurulmuştur, bu nedenle Visual Studio Code genişletilebilirlik API'lerinin çoğu kullanılabilir. Ayrıca, veri yönetimine özgü etkinlikler için diğer genişletilebilirlik noktalarını da sağladık.

Başlıca genişletilebilirlik noktalarından bazıları şunlardır:

  • Visual Studio Code genişletilebilirlik API'leri
  • Azure Data Studio uzantısı yazma araçları
  • Pano sekmesi panel katkılarını yönetme
  • Eylem deneyimiyle içgörüler
  • Azure Data Studio genişletilebilirlik API'leri
  • Özel Veri Sağlayıcısı API'leri

Visual Studio Code genişletilebilirlik API'leri

Çekirdek Azure Data Studio platformu Visual Studio Code üzerine oluşturulduğundan, Visual Studio Code genişletilebilirlik API'leri hakkındaki ayrıntılar Visual Studio Code web sitesindeki Uzantı Yazma ve Uzantı API'sinin belgelerinde bulunur.

Not

Azure Data Studio sürümleri en son VS Code sürümüyle uyumlu. Ancak, eklenen VS Code altyapısı geçerli VS Code sürümü olmayabilir. Örneğin, Kasım 2020'de Azure Data Studio'daki VS Code altyapısı 1.48 ve geçerli VS Code sürümü 1.51'dir. Uzantı yükleme sırasında, uzantının paket bildiriminde (package.json) belirtilmiş olan daha yeni bir VS Code altyapı sürümüne sahip olması nedeniyle, "'<adı>', VS Code <sürümü>ile uyumlu olmadığından" hata iletisi görüntülenir. Hakkında altındaki Yardım menüsü aracılığıyla Azure Data Studio'nuzda VS Code altyapısı sürümünü doğrulayabilirsiniz.

Pano sekmesi panel katkılarını yönetme

Ayrıntılar için bkz . Katkı Noktaları ve Bağlam Değişkenleri.

Azure Data Studio genişletilebilirlik API'leri

Ayrıntılar için bkz . Genişletilebilirlik API'leri.

Katkı puanları

Bu bölüm, package.json uzantısı bildiriminde tanımlanan çeşitli katkı noktalarını kapsar.

IntelliSense, azuredatastudio içinde desteklenir.

Pano katkı noktaları

Panoya sekme, kapsayıcı ve/veya içgörü pencere öğesi ekleme.

Panonun ekran görüntüsü.

Gösterge Paneli.Sekmeler

Dashboard.tabs, pano sayfasının içinde sekme bölümlerini oluşturur. Bir nesne veya bir nesne dizisi bekler.

"dashboard.tabs": [
    {
        "id": "test-tab1",
        "title": "Test 1",
        "description": "The test 1 displays a list of widgets.",
        "when": "connectionProvider == 'MSSQL' && !mssql:iscloud",
        "alwaysShow": true,
        "container": {
            ...
        }
    }
]

gösterge paneli kapları

Pano kapsayıcısını satır içinde (pano sekmesinin içinde) belirtmek yerine dashboard.containers kullanarak kapsayıcıları kaydedebilirsiniz. Bir nesneyi veya bir nesne dizisini kabul eder.

"dashboard.containers": [
    {
        "id": "innerTab1",
        "widgets-container": [
            {
                "widget": {
                    "query-data-store-db-insight": {}
                }
            },
            {
                "widget": {
                    "explorer-widget": {}
                }
            }
        ]
    },
    {
        "id": "innerTab2",
        "webview-container": {}
    },
    {
        "id": "innerTab3",
        "grid-container": [
            {
                "name": "widget 1",
                "widget": {
                    "explorer-widget": {}
                },
                "row": 0,
                "col": 0
            },
            {
                "name": "widget 2",
                "widget": {
                    "tasks-widget": {
                        "backup",
                        "restore",
                        "configureDashboard",
                        "newQuery"
                    }
                },
                "row": 0,
                "col": 1
            },
            {
                "name": "Webview 1",
                "webview": {
                    "id": "google"
                },
                "row": 1,
                "col": 0,
                "colspan": 2
            },
            {
                "name": "widget 3",
                "widget": {
                    "explorer-widget": {}
                },

Kayıtlı kapsayıcıya başvurmak için kapsayıcının kimliğini belirtin.

"dashboard.tabs": [
    {
        "id": "test-tab1",
        "title": "Test 1",
        "description": "The test 1 displays a list of widgets.",
        "when": "connectionProvider == 'MSSQL' && !mssql:iscloud",
        "alwaysShow": true,
        "container": {
            "id": "innerTab1"
        }
    }
]

gösterge.paneli.içgörüler

dashboard.insights kullanarak içgörüleri kaydedebilirsiniz. Bu, Öğreticisi:özel bir içgörü pencere öğesi oluşturma işlemine benzer. Bir nesneyi veya bir nesne dizisini kabul eder.

"dashboard.insights": {
    "id": "my-widget",
    "type": {
        "count": {
            "dataDirection": "vertical",
            "dataType": "number",
            "legendPosition": "none",
            "labelFirstColumn": false,
            "columnsAsLabels": false
        }
    },
    "queryFile": "{your file folder}/activeSession.sql"
}

Pano kapsayıcı türleri

Şu anda dört desteklenen kapsayıcı türü vardır:

widgets-container

Pencere öğeleri kapsayıcısının ekran görüntüsü.

Kapsayıcıda görüntülenecek pencere öğelerinin listesi, bu listeyi kabul eden bir akış düzenidir.

"container": {
    "widgets-container": [
        {
            "widget": {
                "query-data-store-db-insight": {}
            }
        },
        {
            "widget": {
                "explorer-widget": {}
            }
        }
    ]
}

webview-container

Webview kapsayıcısının ekran görüntüsü

Web görünümü kapsayıcının tamamında görüntülenir. Web görünümü kimliğinin sekme kimliğiyle aynı olmasını bekler.

"container": {
    "webview-container": {}
}

ızgara konteyneri

Kılavuz kapsayıcının ekran görüntüsü

Kılavuz düzeninde görüntülenen pencere öğelerinin veya web görünümlerinin listesi. Kılavuz düzeni, bu listeyi kabul eden 2x2 kılavuz düzenidir.

"container": {
    "grid-container": [
        {
            "name": "widget 1",
            "widget": {
                "explorer-widget": {}
            },
            "row": 0,
            "col": 0
        },
        {
            "name": "widget 2",
            "widget": {
                "tasks-widget": {
                    "backup",
                    "restore",
                    "configureDashboard",
                    "newQuery"
                }
            },
            "row": 0,
            "col": 1
        },
        {
            "name": "Webview 1",
            "webview": {
                "id": "google"
            },
            "row": 1,
            "col": 0,
            "colspan": 2
        },
        {
            "name": "widget 3",
            "widget": {
                "explorer-widget": {}
            },
            "row": 0,
            "col": 3,
            "rowspan": 2
        }
    ]
}

Gezinti bölümü ekranının ekran görüntüsü

Gezinti bölümü kapsayıcıda görüntülenir. Bir nesne dizisi bekler.

"container": {
    "nav-section": [
        {
            "id": "innerTab1",
            "title": "inner-tab1",
            "icon": {
                "light": "./icons/tab1Icon.svg",
                "dark": "./icons/tab1Icon_dark.svg"
            },
            "container": {
                ...
            }
        },
        {
            "id": "innerTab2",
            "title": "inner-tab2",
            "icon": {
                "light": "./icons/tab2Icon.svg",
                "dark": "./icons/tab2Icon_dark.svg"
            },
            "container": {
                ...
            }
        }
    ]
}

Bağlam değişkenleri

Visual Studio Code ve daha sonraki Azure Data Studio bağlamı hakkında genel bilgi için bkz. Genişletilebilirlik.

Azure Data Studio'da, uzantılar için kullanılabilir veritabanı bağlantıları ile ilgili belirli bağlamlara sahibiz.

Pano

Panoda aşağıdaki bağlam değişkenlerini sağlarız:

Bağlam Değişkeni Açıklama
connectionProvider Geçerli bağlantının sağlayıcısı için tanımlayıcı dizesi. Örneğin connectionProvider == 'MSSQL'.
serverName Geçerli bağlantının sunucu adının dizesi. Örneğin serverName == 'localhost'.
databaseName Geçerli bağlantının veritabanı adının dizesi. Örneğin databaseName == 'master'.
connection Geçerli bağlantının tam bağlantı profili nesnesi (IConnectionProfile)
dashboardContext Panonun şu anda açık olduğu sayfanın bağlamının dizesi. 'database' veya 'server'. Örneğin dashboardContext == 'database'