gpt4 book ai didi

c# - Linq中的 "SELECT SYSTEM_USER"相当于什么

转载 作者:行者123 更新时间:2023-11-30 15:40:11 25 4
gpt4 key购买 nike

我可以使用 SYSTEM_USER 值获取当前登录的 SQL Server 用户的身份,但是有没有办法通过 执行此操作?不知何故?我正在寻找类似下面的内容:

var query = from u in dataContext.Users
where u.domainname == dataContext.system_user
select u.fullname;

如果非域用户通过 VPN 进行身份验证,使用类似 Environment.UserName 的东西将不起作用,并且不希望通过单独的语句进行查询,因为我只想使用一个语句获取数据。

最佳答案

调用系统函数可以通过在数据库中创建新函数来完成,这些函数可以进一步映射到 ORM 中。这取决于有关映射用户数据库功能的 ORM 功能。

CREATE FUNCTION dbo.fnSystemUser () returns varchar(120)
AS
BEGIN
return (select SYSTEM_USER)
END

LINQ2SQL 和 EF 将为以下 LINQ 查询创建单个 SQL 语句。

var query = from u in dataContext.Users
where u.domainname == dataContext.fnSystemUser()
select u.fullname;

关于c# - Linq中的 "SELECT SYSTEM_USER"相当于什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9552850/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com