オブジェクト型から空のテーブルを作成する方法を見つけようとしています。型は非常に単純です (プリミティブ型のプロパティのみ)。すぐに使えるものはありますか?
一部のプロパティ リフレクションを使用して、独自の「CREATE TABLE」クエリを作成する必要がありますか?
Dapper を使用して、FirebirdSQL データベースからデータを読み取り、そのテーブルの一部を Sqlite データベースに書き込むプロジェクトに取り組んでいます。
任意の提案をいただければ幸いです。
Marc が述べたように、Dapper はあなたのためにそれを行うつもりはありませんが、ここで私の回答 ( ADO.NET 個別のデータベース) を見て、単にコマンド プロパティの 1 つを適応させて CREATE TABLE ステートメントを構築すると、リフレクションが活用されます。 . それほど有利なスタートで、かなり簡単に進むはずです。
例を作成しますが、電話からこれに答えています。
パーティーにはかなり遅れましたが、この種の関数がServiceStack.OrmLiteで利用可能であることを追加したかっただけです:
class Poco
{
public int Id { get; set; }
public string Name { get; set; }
public string Ssn { get; set; }
}
db.DropTable<Poco>();
db.TableExists<Poco>(); //= false
db.CreateTable<Poco>();
db.TableExists<Poco>(); //= true
db.ColumnExists<Poco>(x => x.Ssn); //= true
db.DropColumn<Poco>(x => x.Ssn);
db.ColumnExists<Poco>(x => x.Ssn); //= false
ただし、このライブラリは無料ではないことに注意してください。