小编uhl*_*eka的帖子

如何将计算列添加到EF4模型中?

给定MS SQL 2008中的"用户"表和"登录"表:

CREATE TABLE [dbo].[User_User](
    [UserID] [int] IDENTITY(1000,1) NOT NULL,
    [UserName] [varchar](63) NOT NULL,
    [UserPassword] [varchar](63) NOT NULL
)
CREATE TABLE [dbo].[Util_Login](
    [LoginID] [int] IDENTITY(1000,1) NOT NULL,
    [User_UserID] [int] NOT NULL, -- FK REFERENCES [dbo].[User_User] ([UserID])
    [LoginDate] [datetime] NOT NULL,
)
Run Code Online (Sandbox Code Playgroud)

如何调整User_User实体框架模型对象以包含返回MAX(LoginDate)的"UserLastLogin"列?

我知道我可以围绕SQL视图创建一个EF4模型:

CREATE VIEW [v_User_User]
AS
SELECT 
        [User_User].*, 
        (
                SELECT MAX(LoginDate) 
                FROM [Util_Login] 
                WHERE User_UserID = UserID
        ) AS UserLastLogin
FROM [User_User]
Run Code Online (Sandbox Code Playgroud)

但有没有办法可以修改User_User模型以包含计算的列?

编辑:我正在寻找一种方法来获取用户或列表<用户>包括单个数据库查询中的最大(Util.LastLogin)日期.

sql-server entity-framework calculated-columns entity-framework-4

7
推荐指数
1
解决办法
4782
查看次数