簡體   English   中英

如何使用一次數據庫往返執行兩個EF linq查詢

[英]How to execute two EF linq query with one db round trip

當我們使用ado.net時,我們可以傳遞多個用逗號分隔的sql。 這是一個例子。

SqlConnection connection = new SqlConnection();
SqlCommand command = new SqlCommand();
connection.ConnectionString = connectionString; // put your connection string
command.CommandText = @"
     update table
     set somecol = somevalue;
     insert into someTable values(1,'test');";
command.CommandType = CommandType.Text;
command.Connection = connection;

try
{
    connection.Open();
}
finally
{
    command.Dispose();
    connection.Dispose();
}

我想知道如何構造基於EF linq的查詢,該查詢將從多個表中獲取數據,但是兩個表之間沒有關系。 因此我們無法執行加入。

因此,向我展示一個示例,其中EF無需一次db往返就可以從student和product表中獲取數據,而無需任何連接。 按照我上面的示例,ado.net是否有可能做到這一點?

 var query = from data in context.Student
                orderby data.name
                select data;


 var query = from data in context.Product
                orderby data.name
                select data;

當兩個以上查詢將運行時,將發生兩個數據庫往返或一個?

我需要一次往返數據庫從兩個表student和product中獲取數據,就像我上面的EF linq查詢一樣。

如果可能,請與示例代碼討論。 謝謝

開箱即用不支持此功能,但是存在一個啟用此功能的“未來查詢”包: https : //www.nuget.org/packages/Z.EntityFramework.Plus.QueryFuture.EF6/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM