1. 程式人生 > >ASP.NET Aries 高階開發教程:Excel匯入之多表高階匯入配置(中)

ASP.NET Aries 高階開發教程:Excel匯入之多表高階匯入配置(中)

前言:

在面對Excel的各種複雜匯入情況中,多表匯入是很常見的情景。

今天就來寫一下多表匯入是如何配置的。

1、自定義匯入模板

怎麼自定義:

其實就是自己新建一個Excel了,把列頭都寫好。

不過有一些下拉選項,可能自己不好弄,比如使用者角色,是否這些要變成下拉可選操作,自己去資料庫複製角色資料有點麻煩。

這時候,可以在列表先勾一些列,藉助裡面的格式化功能(生成的Excel能生成下拉項)。

然後先匯出模板,再這個基礎上,做小修改增加一些列即可。

這裡仍以使用者表為例(示例中涉及到兩個表:Sys_User和Sys_UserInfo)

增加了一個列,然後把這個檔案改個名字,和頁面繫結的檢視名一致叫:V_SYS_UserList.xls

(PS:這裡字尾是xls還是xlsx都可以)

然後把它放到Resource\Excel目錄下(後續生成配置系統,系統會自動讀取這個目錄下的Excel檔案)。

說明:

匯出模板的時候,如果存在自定義的模板,則以此優先(單表配置勾選的匯出項,會因為此目錄存在的檔案而不生效) 

2、配置高階Excel匯入。

在配置表頭裡,點選“高階Excel匯入配置”

 或者點選選單“Excel匯入配置”

 

點選“新增",填寫Excel的名稱,描述,和本次匯入涉及到的資料表(多個用“,”號分隔)

儲存後、點選操作的第三個小圖示(欄位對映)

系統會自動讀取Resource\Excel\下的同名Excel檔案,並自動把相關聯的資料都初始化好。

接下來,需要小小調整一下配置:(修正Excel列名對應的表名和欄位名,或者新增其它需要寫入資料庫的欄位

主外來鍵規則說明:

主鍵:系統會自動識別主鍵,所以不需要配置主鍵。

外來鍵:第一個主表肯定沒外來鍵,所以不用管。

從第二個表開始,需要指定外來鍵(即關聯欄位,若沒有則需要新增)

根據這個邏輯(N個表也是一樣設定)

所以,此處的配置,最關鍵的就是理清各種表的關聯欄位(特別匯入的時候,涉及到七八九張表的情況下)

配置好後,其實操作流程不變,仍是匯出模板,填寫資料,匯入

總結:

當一個匯入需要涉及到多個表時,就可以啟用此高階配置。

對於單表,複雜的情況,也可以用這個配置。

下一篇,會針對這個配置,有更詳細的介紹。