我应该如何使用实体框架表达这组语句
本文关键字:语句 框架 何使用 实体 我应该 | 更新日期: 2023-09-27 18:32:21
我设置了一个复杂的应用程序,该应用程序使用与某些Microsoft SQL Server数据库相关的实体框架。虽然使用 Linq 表达一些常见查询似乎很简单,但我想知道我应该如何正确表达这组语句(它返回一个标量):
DECLARE @TZ SMALLINT;
SELECT @TZ = DATEPART(TZ, SYSDATETIMEOFFSET());
SELECT CAST(@TZ / 60 AS VARCHAR(5));
为什么不使用 c# 等效项:
DateTime n = DateTime.Now;
int tz = (n - n.ToUniversalTime()).Hours;
当然,假设您的服务器和程序位于同一时区。
这是我上面提到的完整代码:
Create Function dbo.TimeZone(@dummy varchar) returns varchar(5)
as
begin
Declare @tz varchar(5)
Select @tz = CAST(DATEPART(TZ, SYSDATETIMEOFFSET()) / 60 AS VARCHAR(5))
return @tz
End
Go
Create Table x ( i int,
tz as (dbo.Timezone(''))
)
Go
Insert into x(i) Values(5);
Select * from x;
或使用视图:
Create View y as Select dbo.TimeZone('') Tz
Go
Select * From y