如何使用SqlConnection.GetSchema获取同义词信息?

The*_*ebo 10 c# sql-server schema

使用这样的代码:

DataTable schema = conn.GetSchema();
DataTable tables = conn.GetSchema("Tables");
DataTable columns = conn.GetSchema("Columns");
Run Code Online (Sandbox Code Playgroud)

可以获取有关模式的大量信息,但元数据版本(即:GetSchema())不会返回有关同义词的任何信息.

我们在环境中使用同义词.我可以使用GetSchema获取有关它们的Schema信息,还是需要其他方法?

Bri*_*ler 3

没有 Synonyms for SQL Server 的架构集合:

SQL Server 架构集合

似乎确实有一种方法可以使用 .NET 3.5 覆盖集合。我从来没有这样做过,所以我不知道它是否真的有效。基本思想是创建一个 XML 文件来定义如何getschema定义和查询架构数据。然后,您可以更改应用程序配置以使用此 XML 文件来覆盖可用的集合。

获取架构覆盖

提供的链接中有一些示例,用于将主键集合添加到架构中。如果您决心使用,它看起来很有前途getschema。否则,您可以创建自己的模式函数并仅查询 sys.synonyms 来获取同义词。