sqlserver 调用C# 怎么在C#中获得用户名

sqlserver 调用C# 如何在C#中获得用户名?
需求:
       在sqlserver中注册了程序集,用C# 写的,因为C#中药调用C写的代码,需要传入当前数据库的用户名,在C#中获得用户名的方法是使用将connectstring="context connection=true",然后使用sql语句调用SUSER_SNAME()函数获得用户名。
问题:
       有两个用户 A 和 B ,均添加到数据库角色DB_OWNER 中,创建程序集时authorization后跟的是 DB_OWNER;然后创建了函数,可是如果A先执行函数,则获得的用户名是A,这没错 ,使用B执行获得也是A,就不对了,反之若重新创建程序集,B先执行又一直都是B。

觉的是因为"context connection=true"是进程内连接的问题,但又不知道怎么改。望各位路过的指教一二,谢谢了!
------解决方案--------------------
你比较下前后的 @@SPID 是否一样?
如果一样就是连接池中的连接重用了。
大概只能靠调用者传参数进行区分了。
------解决方案--------------------
sp_who @@spid