ASP.NET Razor中的简单SQL查询

时间:2019-04-17 06:27:48

标签: c# asp.net-core entity-framework-core

我正在学习ASP.NET Core和Razor页面。在我的实践项目中,我试图对通过迁移(代码优先)添加的数据库执行选择查询。

代码如下:

public string DataTest()
{
    var data = CheckDbEntryAsync();
    var d1 = data.ToString();
    return data.ToString();
}

public async Task<List<UserData>> CheckDbEntryAsync()
{
   List<UserData> data;

   data = await _context.UserDataItems.FromSql("SELECT * from dbo.UserDataItems").ToListAsync();

   return data;
}

输出(“ data.ToString()”或变量“ d1”的值)是:

"System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1+AsyncStateMachineBox`1[System.Collections.Generic.List`1[LearnASP.Models.UserData],LearnASP.Controllers.UserManagerController+<CheckDbEntryAsync>d__6]"

我不知道该如何理解...这不应该是包含表中值的列表吗?

在执行CheckDbEntryAsync之前,“数据”的值为:

Id = 242, Status = WaitingForActivation, Method = "{null}", Result = "{Not yet computed}"

这是我的UserDataDbContext.cs:

public class UserDataDbContext : DbContext
{
    public DbSet<UserData> UserDataItems { get; set; }

    public UserDataDbContext(DbContextOptions<UserDataDbContext> options) : base(options)
    {

    }

    protected override void OnModelCreating(ModelBuilder builder)
    {
        base.OnModelCreating(builder);
    }
}

我不知道我到底要去哪里...是不是正在执行的查询...还是其他原因...没有错误消息。

请帮助, 谢谢

0 个答案:

没有答案