> ## Content Index
> Fetch the complete content index at: https://blog.anthea.day/llms.txt
> Use this file to discover other available public pages before exploring further.

# 歡迎來到 GIS 的世界－ Day 21：Npgsql With .NET Framework
- URL: https://blog.anthea.day/series-2022-ithome-21/
- Published: 2022-10-04T16:01:47.000Z
- Updated: 2026-11-07T14:43:41.000Z
- Author: Anthea / 芫荽
- Tags: #Migrated-1792241843742, #Import 2026-10-17 12:57, Coding, 2022 iThome 鐵人賽：歡迎來到 GIS 的世界

可以正常呼叫出建立 ADO.NET 的視窗之後，現在來一起看一下如何使用 .NET Framework 配合 Entity Framewok 和 PostgreSQL 進行溝通吧。

### 新增

對著任一的資料夾右鍵 > 新增項目 > ADO.NET 資料模型，輸入名稱之後按下新增。

![](https://cdn-images-1.medium.com/max/800/0*gfeQznj5NGAaVkRt.png)

選擇 EF Designer from database，點選新的連線，應該就會順利出線下方的視窗了：

![](https://cdn-images-1.medium.com/max/800/0*URjpbHl1ACKYl3_a.png)

如果你在按下 OK 之後出現了下列的錯誤訊息，可以試著重開機或是重新安裝 .NET Framework 看看：

```
Unable to find the requested .Net Framework Data Provider. It may not be installed.
```

順利按下 OK 後會回到原本新增連線的畫面，這時候會看到下面連線字串的部分已經自動生成了，接著要選擇是否儲存密碼在 Web.config 中，並替這個連線取名，就可以進入下一步。

![](https://cdn-images-1.medium.com/max/800/0*4pzazPcWYNNGa2Ib.png)

下一個可以操作的畫面，會幫你列出可以匯入近來的 Tables，選擇要匯入的 Table 之後就可以按下完成。

![](https://cdn-images-1.medium.com/max/800/0*nOYjl9uMZsy6FiBq.png)

執行一段時間之後，可以看到的畫面如下，這樣就算完成了：

![](https://cdn-images-1.medium.com/max/800/0*aIVrcdqhqpIkf2H1.png)

### 更新

更新的方法很簡單，在空白處右鍵，選擇從資料庫更新模型，就會再次打開這個畫面：

![](https://cdn-images-1.medium.com/max/800/0*RZ-DKlAv1nKGn8a6.png)

如果你沒有新增 Table，這裡就不會出現任何新的 Table，只要直接按下完成就能更新。但要注意的是，這裡只會更新**新增欄位**的部分。詳細的情形可以參考保哥的這篇文章：[執行 Entity Framework 的「從資料庫更新模型」為何不更新](https://blog.miniasp.com/post/2011/05/02/Entity-Framework-Update-Model-from-Database?ref=blog.anthea.day)

### 建立連線

使用的方式很簡單，建立一個新的實體就行了：

```
var db = new tourismEntities(); 
var restaurant = db.restaurant.Find("Id");
```