簡體   English   中英

最佳實踐 - 如何在 ServiceStack.OrmLite .NET 項目中擴展數據庫?

[英]Best Practice - How to extend the DB in a ServiceStack.OrmLite .NET project?

我最近接受了一個 .Net 項目,該項目通過 ServiceStack REST API 從 Microsoft SQL 數據庫公開DAOs 服務器在 IIS 7.5 上運行

AppHost.Configure ,完整的數據庫架構是這樣創建的......

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....
        }

當我現在想要擴展DAO (例如,因此向表中添加一個新列)時,我會在 Visual Studio 中執行此操作,對其進行測試,如果可行,我將通過 Microsoft SQL Server Management Studio 遠程添加該列實時測試服務器,因為我不想丟失數據庫中的任何數據。 當只添加一列時,這不是很快,如果添加更多表/列或更改單元格的數據類型,這會非常麻煩。

在 Visual Studio 和測試系統上更新數據庫的最佳實踐是什么? 甚至有可能采用“代碼優先方法”,我只擴展DAO然后更新數據庫?

查看ServiceStack 客戶論壇中的這個現有線程,它解釋了處理數據庫架構更改的不同策略。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM