3

私はAS 2つのテーブルからデータを返すプロシージャ作成した処理するデータはどのようにFromsqlを使用してDOTNETコアで複数のテーブルを()の設定

ドットネットコアを使用してWEBAPIを作成しています: -

select * from table1 
select * from table2 

を私は手順を実行してモードリストで結果を受けています

public class ModelList 
{ 
public model1 m1 { get; set; } 
public model2 m2 { get; set; } 
} 

: - - :

ように私は、モデルのリストを持っています10
List<ModelList> ML= new List<ModelList>(); 
ML= db.ModelList.FromSql("EXECUTE [dbo].[usp]").ToList(); 

私はこれらの2つの別々のオブジェクトにこれら2つのテーブルの結果を取得していません。

単一テーブルでは動作しますが、複数では動作しません。

私が間違っている箇所をお勧めしますか?

ドットネットコアで実行可能かどうか?

+0

はありH.Herzl @ –

+0

を設定しましたCOREでのADO.netの限られた機能 –

答えて

0

次の実装は、望ましい結果を提供します:

public ModelList ExecuteMultiple(string query){ 

      using(IDbConnection connection = new SqlConnection(YOUR_CONNECTION_STRING)){ 
       try{ 
        connection.Open(); 
        var multi = connection.QueryMultiple(query); 
        var modelList = new ModelList(); 
        modelList.m1 = multi.Read<model1>(); 
        modelList.m2 = multi.Read<model2>(); 
        return modelList; 
       } 
       catch(Exception ex){ 
        Console.WriteLine(ex.Message); 
       }finally{ 
        connection.Close(); 
       } 
      } 

      return null; 
     } 

は使用法:あなたがADO.NETを使用して複数の結果を処理する必要があり、その場合には

var modelList = ExecuteMultiple("EXECUTE [dbo].[usp]"); 
関連する問題