NpgsqlConnection查询不联接.net核心应用程序中的表

时间:2018-07-30 11:43:28

标签: .net postgresql entity-framework asp.net-core

我连接到PostgreSQL数据库,并希望从三个表中获取数据。

这是我的方法:

public IEnumerable<T> GetResults<T>()
    {
        IEnumerable<T> items = new List<T>();
        using (NpgsqlConnection conn =
            new NpgsqlConnection(_configurationRoot.GetConnectionString("PGConnectionResultDb")))
        {
            try
            {
                conn.Open();
                items = conn.Query<T>(@"select a.id,
                            a.parent_id,
                            a.results,
                            a.status,
                            a.errormessage,
                            a.tablename,
                            b.test_type,
                            c.name,
                            c.start_date,
                            c.end_date
                            from a
                            join b 
                            on a.parent_id = b.id
                            join c
                            on c.id = b.parent_id").ToList();

                Console.WriteLine(items);
            }
            catch (Exception e)
            {

            }
            finally
            {
                conn.Dispose();
                conn.Close();
            }

            return items;
        }

当我在DBeaver中以sql命令执行查询时,查询效果很好,但是我的方法从表b和c 返回NULL值。它只为表a放入值,而不联接其他表。为什么查询不正确不能正常工作?

这是我得到的数据: enter image description here

这些带下划线的值不在数据库中NULL

0 个答案:

没有答案