Rozšiřitelnost nástroje Azure Data Studio
Azure Data Studio má několik mechanismů rozšiřitelnosti, které umožňují přizpůsobit uživatelské prostředí a zpřístupnit tato přizpůsobení celé komunitě uživatelů. Základní platforma Azure Data Studio je založená na editoru Visual Studio Code, takže je k dispozici většina rozhraní API rozšiřitelnosti editoru Visual Studio Code. Kromě toho jsme pro aktivity specifické pro správu dat poskytli další body rozšiřitelnosti.
Mezi klíčové body rozšiřitelnosti patří:
- Rozhraní API rozšiřitelnosti editoru Visual Studio Code
- Nástroje pro vytváření rozšíření Azure Data Studio
- Správa příspěvků na panelu karet řídicího panelu
- Přehledy s využitím akcí
- Rozhraní API rozšiřitelnosti nástroje Azure Data Studio
- Vlastní rozhraní API pro Zprostředkovatel dat
Rozhraní API rozšiřitelnosti editoru Visual Studio Code
Vzhledem k tomu, že základní platforma Azure Data Studio je založená na editoru Visual Studio Code, najdete podrobnosti o rozhraních API pro rozšiřitelnost editoru Visual Studio Code v dokumentaci k rozhraní API pro vytváření a rozšíření rozšíření na webu editoru Visual Studio Code.
Poznámka:
Verze nástroje Azure Data Studio jsou v souladu s nedávnou verzí VS Code, ale zahrnutý modul VS Code nemusí být aktuální verzí VS Code. Například v listopadu 2020 je modul VS Code v Nástroji Azure Data Studio 1.48 a aktuální verze VS Code je 1.51. Chybová zpráva "Nejde nainstalovat rozšíření name<>" protože není kompatibilní s verzí> nástroje VS Code<, je způsobena rozšířením, které má novější verzi modulu VS Code definovanou v manifestu balíčku (package.json
). Verzi modulu VS Code můžete ověřit v nástroji Azure Data Studio pomocí nabídky Nápověda v části O produktu.
Správa příspěvků na panelu karet řídicího panelu
Podrobnosti najdete v tématu Body příspěvku a kontextové proměnné.
Rozhraní API rozšiřitelnosti nástroje Azure Data Studio
Podrobnosti najdete v tématu Rozhraní API rozšiřitelnosti.
Body příspěvků
Tato část popisuje různé body příspěvků, které jsou definovány v manifestu rozšíření package.json.
IntelliSense se podporuje v azuredatastudio.
Body příspěvků na řídicím panelu
Přispívání na řídicí panel pomocí karty, kontejneru nebo widgetu přehledu
dashboard.tabs
Dashboard.tabs vytvoří oddíly karet na stránce řídicího panelu. Očekává objekt nebo pole objektů.
"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
Místo zadávání kontejneru řídicího panelu (uvnitř řídicího panelu.tab) Kontejnery můžete zaregistrovat pomocí dashboard.containers. Přijímá objekt nebo pole objektu.
"dashboard.containers": [
{
"id": "innerTab1",
"container": {
...
}
},
{
"id": "innerTab2",
"container": {
...
}
}
]
Pokud chcete odkazovat na zaregistrovaný kontejner, zadejte ID kontejneru.
"dashboard.tabs": [
{
...
"container": {
"innerTab1": {
}
}
}
]
dashboard.insights
Přehledy můžete zaregistrovat pomocí dashboard.insights. Podobá se kurzu: Vytvoření vlastního widgetu přehledu
"dashboard.insights": {
"id": "my-widget"
"type": {
"count": {
"dataDirection": "vertical",
"dataType": "number",
"legendPosition": "none",
"labelFirstColumn": false,
"columnsAsLabels": false
}
},
"queryFile": "{your file folder}/activeSession.sql"
}
Typy kontejnerů řídicího panelu
Aktuálně existují čtyři podporované typy kontejnerů:
widgets-container
Seznam widgetů, které se zobrazí v kontejneru. Jedná se o rozložení toku. Přijímá seznam widgetů.
"container": { "widgets-container": [ { "widget": { "query-data-store-db-insight": { } } }, { "widget": { "explorer-widget": { } } } ] }
webview-container
Webové zobrazení se zobrazí v celém kontejneru. Očekává, že ID webového zobrazení bude stejné jako ID karty.
"container": { "webview-container": null }
grid-container
Seznam widgetů nebo webových zobrazení, které se zobrazí v rozložení mřížky
"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
Oddíl navigace se zobrazí v kontejneru.
"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": { ... } } ] }
Kontextové proměnné
Obecné informace o kontextu v editoru Visual Studio Code a následném nástroji Azure Data Studio najdete v tématu Rozšiřitelnost.
V Nástroji Azure Data Studio máme konkrétní kontext týkající se připojení k databázi, která jsou k dispozici pro rozšíření.
Řídicí panel
Na řídicím panelu poskytujeme následující kontextové proměnné:
kontextová proměnná | description |
---|---|
connectionProvider |
Řetězec identifikátoru pro zprostředkovatele aktuálního připojení. Příklad: connectionProvider == 'MSSQL' . |
serverName |
Řetězec názvu serveru aktuálního připojení. Příklad: serverName == 'localhost' . |
databaseName |
Řetězec názvu databáze aktuálního připojení. Příklad: databaseName == 'master' . |
connection |
Úplný objekt profilu připojení pro aktuální připojení (IConnectionProfile) |
dashboardContext |
Řetězec kontextu stránky, na které je řídicí panel aktuálně zapnutý. Buď "databáze" nebo "server". Například dashboardContext == 'database' |