Dapper ORMネストされたオブジェクト

dapper orm

質問

私は前に使ったことのないDapper ORMを使用するよう指示した顧客がいます。ネストされたオブジェクトに問題があります。私は、埋め込まれた値のオブジェクトクラス(アドレス)を持っているメインクラス(場所)を持っています。 2つのクラスは次のようになります。

class Location {
    int Id;
    string LocationName;
    Address LocationAddress;
}

Class Address {
    string Street;
    string City;
    string State;
    string ZipCode;
}

SQL:

SELECT Id, LocationName, Street, City, State, ZipCode FROM Locations

私はいくつかの例を見てきましたが、私はちょうどクエリを正しく設定することはできません。私はDapperが構造を正しく理解するのに十分理解していません。

受け入れられた回答

あなたは、あなたの大まかなクエリで "splitOn"パラメータを使うことができます。

var sql = "SELECT Id, LocationName, Street, City, State, ZipCode FROM Locations";
var conn = // your get connection logic here. 

using(conn)
{
 conn.Open();
 var locations = conn.Query<Location,Address,Location>(sql, (location, address) => 
                 {
                   location.LocationAddress = address;
                   return location;
                 }, splitOn: "Street");
}

レコードセット内のオブジェクトが "Id"という列で "分割"されていない場合は、SplitOnが必要です。



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ