舊系統導入Asp.net MVC -資料存取篇

最近都在處理把舊系統升級成asp.net mvc,在這個修改的過程遇到了不少的問題。以這篇來講,要說的就是舊系統大多都是用ado.net的方式來取資料。目前大部份的mvc教學中,都是搭配entity framework做操作。但是用這個就會遇到一個狀況。舊有的sql要翻譯成linq的語法。在翻譯的過程式如果神智不清的話,問題就變得很多。

其實在導入mvc的時候,不一定非要用entity framework來存取資料,我們也可以整合現有的ado.net來進行操作。

首先我們先到Nuget中,查詢

dapper

找到後直接安裝他。

接下來我們需要建立一些Model,這個部份我們可以使用entity framework來幫我們產生。這樣比較省時間。接下來我們對資料的處理就像以下所示。在 connection.Query的後面把我們model加上去。後面直接加入sql的語法。

string myConnectionString = "xxxxxxx";

using (var connection = new SqlConnection(myConnectionString))
            {
                connection.Open();
                var posts = connection.Query<TEST_20130426>("SELECT TOP 20 *FROM [xxxx].[dbo].[TEST_20130426]");
                foreach (var xx in posts) {
                    System.Diagnostics.Debug.Write("測試sql query "+xx.EMAIL_ADDR + "\n");
                
                }

執行後,回傳的就是物件了。


留言

這個網誌中的熱門文章

[心得] 圖解 微分、積分生活中的微積分-第一章

Objective-C的數學運算函式

c# 把List中重復的資料去掉