2016-04-18 16 views
1

habe ich ein Modell, das ein Wörterbuch als eine seiner EigenschaftenKarte Wörterbuch Eigenschaft petapoco

public class PupilCache { 
    public int Id { get; set; } 
    public DateTime CreateDate { get; set; } 
    public string Name { get; set; } 
    public string Username { get; set; } 
    public string Email { get; set; } 
    public Dictionary<string, object> Properties { get; set; } 
} 

Die Schlüssel für dieses Wörterbuch in SQL alle Spalten für eine Verbindungstabelle hat. Ist es mit Peta Poco möglich, dies in einer Abfrage abzurufen?

Antwort

0

PetaPoco Betreuer hier. Ja, das sollte mit der Methode fetch möglich sein, für die Sie einen Rückruf bereitstellen, um die Poco-Beziehung zu füllen. Sie müssen jedoch einen Poco bereitstellen, damit PetaPoco die Spalten mit den Schlüsselwerten aus dem DB einem Poco zuordnen kann (erforderlich).

Sehen Sie diese

/// <summary> 
    ///  Perform a multi-poco fetch 
    /// </summary> 
    /// <typeparam name="T1">The first POCO type</typeparam> 
    /// <typeparam name="T2">The second POCO type</typeparam> 
    /// <typeparam name="TRet">The returned list POCO type</typeparam> 
    /// <param name="cb">A callback function to connect the POCO instances, or null to automatically guess the relationships</param> 
    /// <param name="sql">The SQL query to be executed</param> 
    /// <param name="args">Arguments to any embedded parameters in the SQL</param> 
    /// <returns>A collection of POCO's as a List</returns> 
    List<TRet> Fetch<T1, T2, TRet>(Func<T1, T2, TRet> cb, string sql, params object[] args); 

Beispiel

db.Fetch<PupilCache, KeyValuePoco, PupilCache>((pc, kv) => pc.Properties.Add(kv.Key, kv.Value), "query"); 
Verwandte Themen