Entity Framework 核心数据库-首先选择特定的列
Entity Framework Core database-first selecting specific columns
public Tbl016 CheckLoginCredentials(string UserName, string Password)
{
return
context.Agents
.Where(x => x.LoginName == UserName && x.LoginPassword == Password)
.Select(x => new Tbl016
{
LoginName = x.LoginName,
LoginPassword = x.LoginPassword
})
.FirstOrDefault();
}
我正在使用数据库优先方法和存储库设计模式开发 Entity Framework 核心 API。在上面的函数中,我试图从数据库中检索特定的列,但不幸的是,当我 运行 代码时,响应主体从 table.[=14= 中的所有列中获取数据]
到目前为止我已经尝试过 .Select new
表达式,但它不起作用。
您可以 return 匿名对象:
.Select(x => new {
x.LoginName,
x.LoginPassword
}).FirstOrDefault();
这应该只 select -> 发送 2 列。
感谢@mxmissile 问题已解决
我将方法的 return 类型更改为动态而不是(table 的对象)。然后我在 .Select() 方法中匿名 returned 数据
完整代码为:
public dynamic CheckLoginCredentials(string UserName, string Password)
{
return context.Agents
.Where(x => x.LoginName == UserName && x.LoginPassword == Password)
.Select(x => new {
x.LoginName,
x.LoginPassword
})
.FirstOrDefault();
}
public Tbl016 CheckLoginCredentials(string UserName, string Password)
{
return
context.Agents
.Where(x => x.LoginName == UserName && x.LoginPassword == Password)
.Select(x => new Tbl016
{
LoginName = x.LoginName,
LoginPassword = x.LoginPassword
})
.FirstOrDefault();
}
我正在使用数据库优先方法和存储库设计模式开发 Entity Framework 核心 API。在上面的函数中,我试图从数据库中检索特定的列,但不幸的是,当我 运行 代码时,响应主体从 table.[=14= 中的所有列中获取数据]
到目前为止我已经尝试过 .Select new
表达式,但它不起作用。
您可以 return 匿名对象:
.Select(x => new {
x.LoginName,
x.LoginPassword
}).FirstOrDefault();
这应该只 select -> 发送 2 列。
感谢@mxmissile 问题已解决 我将方法的 return 类型更改为动态而不是(table 的对象)。然后我在 .Select() 方法中匿名 returned 数据 完整代码为:
public dynamic CheckLoginCredentials(string UserName, string Password)
{
return context.Agents
.Where(x => x.LoginName == UserName && x.LoginPassword == Password)
.Select(x => new {
x.LoginName,
x.LoginPassword
})
.FirstOrDefault();
}