-1

私はsqliteネット拡張機能を使用して、公式サイトhttps://bitbucket.org/twincoders/sqlite-net-extensionsのチュートリアルに従っている私のC#コードにテーブルがある2つのテーブルに1対多の関係を作成しています

[Table("Stock")]
public class Stock
{
    [PrimaryKey, AutoIncrement]
    public int Id { get; set; }
    [MaxLength(8)]
    public string Symbol { get; set; }

    [OneToMany(CascadeOperations = CascadeOperation.All)]      // One to many relationship with Valuation
    public List<Valuation> Valuations { get; set; }
}
[Table("Valuation")]
public class Valuation
{
    [PrimaryKey, AutoIncrement]
    public int Id { get; set; }

    [ForeignKey(typeof(Stock))]     // Specify the foreign key
    public int StockId { get; set; }
    public DateTime Time { get; set; }
    public decimal Price { get; set; }
}

Stockobject を作成して Db に挿入するコードを次に示します。

var valuation = new List<Valuation>();
        valuation.Add(new Valuation { Price = 1 });

        var stock = new Stock();
        stock.Valuations = valuation;

        db.InsertWithChildren(stock); 

しかし、コードをデバッグしてdbから株式データを読み取ると、評価のリストにnullが表示されます。ここで何が問題なのですか?

それが私に示す方法です

ここに画像の説明を入力

4

1 に答える 1

0

db.GetWithChildren<Stock>()の代わりに使用する必要がありdb.Table<Stock>()ます。

ツインコーダーの例:

// Get the object and the relationships
var storedValuation = db.GetWithChildren<Valuation>(valuation.Id);
于 2015-09-03T16:56:12.803 に答える