2017-03-29 8 views
2

エンティティフレームワークコアにnpgsql postgresqlを使用してEntity Frameworkコアを使用しています。エンティティフレームワークコアjsonb列タイプ

私の質問は、マイグレーションを使用してJSONB列型を生成するクラスプロパティをどのようにマークしますか?例えば

:事前に

public class MyTableClass 
{ 
    public int Id { get; set; } 

    // My JSONB column 
    public string Data { get; set; } 
} 

感謝。 H.ヘルツルのコメントに基づいて

+2

Byte []を試して、エンティティマッピングの列タイプをjsonbに設定しましたか? –

+0

ef coreを使ってjsonbに問い合わせることができましたか?例えばjson doc – zaitsman

+0

zaitsmanのプロパティを照会するには、現時点では不可能だと考えてください。 https://github.com/aspnet/EntityFrameworkCore/issues/4021をご覧ください。私はそのためのSQLクエリを持っています。私は結果を読むためにこれを使用しています:https://github.com/aspnet/EntityFrameworkCore/issues/1862#issuecomment-331081468。私はすでにDateTimeOffsetとDateTimeに関連するこのコードの問題を発見しました。この問題にヒットした場合、私はあなたの回避策を示すことができます。 –

答えて

4

:移行とデータベース、データを更新する場合

Data = table.Column<string>(type: "jsonb", nullable: true), 

public class MyTableClass 
{ 
    public int Id { get; set; } 

    [Column(TypeName = "jsonb")] 
    public string Data { get; set; } 
} 

移行これを生成:

私の最終的な解決策は、このようなものでした列はjsonb型で正しく作成されました。

ありがとう、ヘルツェル!

関連する問題