私は最近、ServiceStack REST API経由でMicrosoft SQLデータベースからDAOs
を公開する.Netプロジェクトを採用しました。サーバーは、私は今DAO
を拡張(したがってのためのテーブルに新しい列を追加したい場合はAppHost.Configure
では、完全なデータベーススキーマがそのように...ベストプラクティス - ServiceStack.OrmLite .NETプロジェクトでDBを拡張する方法
var dbFactory = new OrmLiteConnectionFactory(DI.DefaultConnectionString, SqlServerOrmLiteDialectProvider.Instance);
using (var db = dbFactory.OpenDbConnection())
{
if (!db.TableExists(db.GetTableName<SomeSpecificDAO>())) //Create table if not exists
{
db.CreateTable<SomeSpecificDAO>();
db.Insert(new SomeSpecificDAO { Data = 0, AnotherData = "", AnSoOne = });
}
/// alot more tables follow....
}
ように作成されたIIS 7.5
上で実行されます例)私はVisual Studioでこれを行い、テストし、正常に機能していれば、データベースのデータを失いたくないので、ライブテストサーバーにMicrosoft SQL Server Management Studioを介してリモートで列を追加します。これは、追加するカラムが1つだけの場合にはそれほど高速ではなく、追加されたテーブル/カラムが多い場合は非常に面倒です。セルのデータ型が変更されます。
Visual Studioとテストシステムでデータベースを更新する際のベストプラクティスは何ですか? DAO
だけを拡張してデータベースを更新する "コードファーストアプローチ"も可能ですか?
DbUpは私が探していたものだと思います。私が理解している限り、これは私がDbUpをDBスキーマの設定にも使用していることを意味しています。私はこの質問で説明したので、サーバーにアプリケーションを公開するときに展開される移行スクリプトしかありません。 – zlZimon