0

Is there any way to merge 2 select that both of select return separate list of data

All I want to do is connecting to Database one times

First Query:

string strQuery1=
    string.Format("SELECT distinct top 10   Title,  Id FROM Table1");
IQueryable<MyCompanyDto> list =
                    _entities.Database.SqlQuery<MyCompanyDto>(strQuery1).AsQueryable();

Second Query:

string strQuery2=
        string.Format("SELECT   ProductName,  CountryID FROM Table2");
    IQueryable<MyProductDto> list =
                        _entities.Database.SqlQuery<MyProductDto>(strQuery2).AsQueryable();
Mohi
  • 25
  • 1
  • 1
  • 7

1 Answers1

0

It is possible to connect one time for both queries, but you have to create two DbCommand:

string strQuery1= string.Format("SELECT distinct top 10   Title,  Id FROM Table1");
string strQuery2= string.Format("SELECT   ProductName,  CountryID FROM Table2");

DataTable dataTable1 =  new DataTable();
DataTable dataTable2 =  new DataTable();

using (SqlConnection conn =  new SqlConnection(<connection_string>))
{
    conn.Open();

    using(DbCommand command = conn.CreateCommand())
    {
       command.Connection = conn;
       command.CommandText = strQuery1;

       using (var reader = dbCommand.ExecuteReader())
       { 
          dataTable1.Load(reader);
       }
    }
    using(DbCommand command = conn.CreateCommand())
    {
       command.Connection = conn;
       command.CommandText = strQuery2;

       using (var reader = dbCommand.ExecuteReader())
       { 
          dataTable2.Load(reader);
       }
    }
 }
Mohamad Mousheimish
  • 1,641
  • 3
  • 16
  • 48
RubenP5
  • 11
  • 4