0

我正在尝试向自定义见解小部件添加“何时”条件,以便该小部件仅在特定数据库的仪表板上可见。

问题是此文档未涵盖可用的可能条件和值: https ://docs.microsoft.com/en-us/sql/azure-data-studio/tutorial-build-custom-insight-sql -server?view=sql-server-ver15

到目前为止,我为此小部件所拥有的 JSON 代码的顶部是:

 {
            "name": "Import Queue",
            "when": "database=MyDB1",
            "gridItemConfig": {
                "sizex": 2,
                "sizey": 2
            },

但条件"database=MyDB1"还是"database==MyDB1"不起作用。我怀疑这是因为我错误地设置了这个条件的值,但是找不到如何使用这个条件的例子。

谁能建议我需要为“何时”条件放置什么以仅针对特定数据库 MyDB1 显示?

2021 年 10 月更新 后,我在 Azure Data Studio GitHub wiki ( https://github.com/microsoft/azuredatastudio/wiki/Contribution-points ) 上发现该格式要求参数使用单引号。此 wiki 中包含的示例如下:

"when": "connectionProvider == 'MSSQL' && !mssql:iscloud"

将此应用于我的问题,我将其更改为:

"when": "database == 'MyDB1'"

但这仍然不起作用。我怀疑这database不是正确的参数名称,所以会继续搜索。微软官方文档还没有更新。

进一步更新 现在终于有了一个解决方案,我已将其放在下面的答案中(https://stackoverflow.com/a/69632460/7858451)。

4

1 回答 1

0

在对 Azure Data Studio GitHub 存储库进行了大量挖掘之后,我终于看到了这个 wiki:https ://github.com/microsoft/azuredatastudio/wiki/Context-Variables

这说明了上下文变量:

databaseName - 当前连接的数据库名称字符串。前任。数据库名称 == '主'

所以这就是databaseName我一直以来,加上参数值需要用单引号引起来的。

这意味着,通过将配置文件 JSON 更改为以下内容:

 {
     "name": "Import Queue",
     "when": "databaseName == 'MyDB1'",
     "gridItemConfig": {
     "sizex": 2,
     "sizey": 2
 },

它最终隐藏了除指定数据库之外的所有数据库的仪表板。

于 2021-10-19T14:12:17.290 回答