首页 > 解决方案 > C# 代码如何检查是否可以使用上下文连接(仅进程内连接)?

问题描述

我编写了一个 C# 库程序集。它位于 NUGET 中,包含可以从 T-SQL 脚本(CLR 集成)和其他 .net 代码调用的函数。我希望代码能够检查它在什么上下文中运行。也就是说,上下文连接(仅进程内连接)是否可用。(如果是,我将在发生异常时进入日志表。)

C# 类中的方法如何最好地确定代码是否在 SQL Server 上“进程内”执行?如果可以使用 SqlConnection("context connection=true") ?(如果代码没有在 SQL Server 中运行,我不喜欢调用 SqlConnection("context connection=true") 并获得 System.NotSupportedException。)

标签: c#sql-serverdatabase-connectionsqlclr

解决方案


你可以检查一下SqlContext.IsAvailable


推荐阅读