Azure Data Studio genişletilebilirliği
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 ek genişletilebilirlik noktaları 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
- Eylemler deneyimleriyle 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 VS Code'un son sürümüyle uyumlu olsa da, dahil edilen 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üklenirken "'<name>' uzantısı VS Code <sürümüyle> uyumlu olmadığından yüklenemiyor" hata iletisi, paket bildiriminde (package.json
) tanımlanan daha sonraki bir VS Code altyapısı sürümüne sahip bir uzantıdan kaynaklanır. 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.
dashboard.tabs
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": {
...
}
}
]
dashboard.containers
Pano kapsayıcısını satır içi olarak belirtmek yerine (dashboard.tab içinde). Dashboard.containers kullanarak kapsayıcıları kaydedebilirsiniz. Bir nesneyi veya nesne dizisi kabul eder.
"dashboard.containers": [
{
"id": "innerTab1",
"container": {
...
}
},
{
"id": "innerTab2",
"container": {
...
}
}
]
Kayıtlı kapsayıcıya başvurmak için kapsayıcının kimliğini belirtin
"dashboard.tabs": [
{
...
"container": {
"innerTab1": {
}
}
}
]
dashboard.insights
dashboard.insights kullanarak içgörüleri kaydedebilirsiniz. Bu, Öğretici: Özel içgörü pencere öğesi oluşturma işlemine benzer
"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
Kapsayıcıda görüntülenecek pencere öğelerinin listesi. Bu bir akış düzenidir. Pencere öğelerinin listesini kabul eder.
"container": { "widgets-container": [ { "widget": { "query-data-store-db-insight": { } } }, { "widget": { "explorer-widget": { } } } ] }
webview-container
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": null }
grid-container
Kılavuz düzeninde görüntülenecek pencere öğelerinin veya web görünümlerinin listesi
"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 }, ]
nav-section
Gezinti bölümü kapsayıcıda görüntülenir
"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 ardından 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' |