Note
資料庫連線字串需經AES加密,加密金鑰與初始向量值依設定檔設定內容為準
可以線上加密網站進行資料庫連線字串加密後填入
本專案建置eBizprise Framework及Utility為共用平台,於各專案中將可能進行模組化共用的功能以助手型態實現。藉此提升專案開發效率並降低開發成本及除錯成本。
於專案核心提供各助手共用功能,如設定檔讀取…等
其支援框架版本依據各版本使用元件搭配Microsoft官方網站支援生命週期進行更新
專案中的目標架構Microsoft .Net 和 .Net Core - 生命週期Microsoft .Net Framework - 生命週期Microsoft .Net Standard
eBizprise.Framework.Api
命名空間:eBizprise.Framework.Api.ApiHelper
提供API助手,提供各類API串接方法
提供常用XML/JSON調用API共用方法
命名空間:eBizprise.Framework.Api.ConfirmationHelper
提供函證助手,對應財金金融區塊鏈電子函證相關API串接方法
目前對應財金規格書2.0版
命名空間:eBizprise.Framework.Api.DataContract.Confirmation
提供函證助手,對應財金金融區塊鏈電子函證相關API類別定義
eBizprise.Framework.Authenticate
命名空間:eBizprise.Framework.Authenticate.BasicHelper
提供基本認證助手,提供帳號密碼認證相關功能
命名空間:eBizprise.Framework.Authenticate.LdapHelper
提供LDAP認證助手,提供LDAP認證相關功能
eBizprise.Framework.Authorize
命名空間:eBizprise.Framework.Authorize.AuthorizeHelper
提供授權助手,以預設資料庫結構整合認證助手提供授權基礎功能
命名空間:eBizprise.Framework.Authorize.JwtAuthorizeHelper
提供JWT授權助手,以JWT(Json Web Token)方式實現授權功能
eBizprise.Framework.Database
命名空間:eBizprise.Framework.Database.SqlHelper
提供資料庫助手,以Dapper套件為基礎提供資料庫存取相關功能
eBizprise.Framework.Enum
命名空間:eBizprise.Framework.Enum.EnumHelper
提供列舉助手,擴充列舉型別常用擴展功能
命名空間:eBizprise.Framework.Enum.EnumDatabaseHelper
提供資料庫列舉助手,擴充列舉型別需使用資料庫連線實作的各種常用擴展功能
eBizprise.Framework.Log
命名空間:eBizprise.Framework.Log.LogHelper
提供日誌助手,整合NLog提供日誌功能
命名空間:eBizprise.Framework.Log.ElasticSearch
提供ElasticSearch日誌功能,整合NLog與ElasticSearch
常用日誌等級說明
Info
資訊等級紀錄:一般用於紀錄非機密性系統資訊使用,於正式環境一般不啟用
Trace
追縱等級紀錄:一般用於紀錄具軌跡的資訊使用,於正式環境一般不啟用
Debug
除錯等級紀錄:一般用於紀錄程式除錯相關資訊使用,於正式環境一般不啟用,僅特殊需除錯的狀況暫時啟用
Warn
警告等級紀錄:一般用於紀錄不直接影響系統功能亦非正常情境之資訊使用,於正式環境一般不啟用,僅特殊需除錯的狀況暫時啟用
Error
錯誤等級紀錄:一般用於紀錄程式錯誤相關資訊之使用,包含邏輯錯誤、輸入資訊錯誤、輸出資訊錯誤等
Exception
異常等級紀錄:一般用於紀錄程式異常錯誤相關資訊之使用,除程式附加錯誤資訊外,另外自動紀錄相關程式碼軌跡,輔助開發人員除錯使用
命名空間:eBizprise.Framework.Common
提供eBizprise.Framework共用之屬性、列舉、介面、類別定義
命名空間:eBizprise.Framework.Common.Database
提供eBizprise.Framework需資料庫之共用屬性、列舉、介面、類別定義
命名空間:eBizprise.Framework.Core
提供eBizprise.Framework核心及常用擴充方法定義,主要包含檔案處理、加/解密處理、設定檔處理等
命名空間:eBizprise.Framework.DatetimeHelper
日期助手,提供民國曆/西元曆相關轉換功能
命名空間:eBizprise.Framework.EmailHelper
郵件助手,提供郵件發送相關功能
命名空間:eBizprise.Framework.FtpHelper
檔案傳輸助手,提供檔案傳輸相關功能
命名空間:eBizprise.Framework.SerializeHelper
序列助手,以Json.Net套件為基礎,提供各種物件與Json、Bson之轉換功能
SqlDocumentGenerator:資料庫文件產生工具
搭配設定文件及範本文件,可自動連線至資料庫伺服器,依特定格式產出資料庫文件
CompressHelper:壓縮助手,以DotNetZip套件為基礎,提供檔案壓縮、解壓縮功能
由於DotNetZip元件已停止更新,需排定時間改為使用System.IO.Compress
ExcelHelper:Excel助手,以NPOI套件為基礎,提供Excel、CSV文件相關讀取、寫入功能
OdfHelper:Odf助手,以套表方式讀取Ods、Odt檔案,提供OpenOffice Ods、Odt文件相關讀取、寫入功能
由於Microsoft.Data.OData元件已停止更新,需排定時間改為使用Microsoft.OData.Core或Microsoft.AspNet.OData
PDFHelper:PDF助手,以DinkToPdf套件為基礎,提供PDF文件產出功能
註:PDF助手使用DinkToPdf元件產出PDF文件,專案中需加入「lib」資料匣,內容包含「libwkhtmltox.dll」、「libwkhtmltox.dylib」、「libwkhtmltox.so」三個文件,可於 DinkToPdf GitHub下載
註:若執行時發生「Unable to load DLL 'libwkhtmltox' or one of its dependencies」異常,需安裝 Microsoft Visual C++ 2015 Redistributable
檔案名稱:eBizprise.Framework.json或appSettings.json
支援環境變數,常用如:Development、Simulator、Production等
ConnectionStrings:資料庫連線字串,可設定多組
Key:資料庫連線字串名稱,型態:文字
Value:資料庫連線字串,型態:文字
JwtSettings:JWT(Json Web Token)授權資訊設定
SecretKey:加密使用的金鑰,需為16、32、64位元長度,型態:文字
Issuer:發行者,型態:文字
Audience:使用者,型態:文字
ExpireDays:逾時時間,單位:日,型態:整數
FtpSettings:檔案傳輸相關設定
ServerUrl:伺服器位址,型態:文字
Port:連接埠,型態:整數
UserName:使用者,型態:文字
SecurityCode:AES加密認證碼,型態:文字
AESKey:AES加密預設使用的加密金鑰,需為16、32、64位元長度,型態:文字
AESIV:AES加密預設使用的初始向量,需為16位元長度,型態:文字
AuthenticateType:驗證類型,目前僅支援LDAP,型態:文字
LoginTimeout:登入逾時時間,單位:分鐘,型態:整數
SqlLog:是否將SQL語法寫入紀錄檔,型態:布林
ApiLog:是否將API助手動作寫入紀錄檔,型態:布林
ApiSimulation:API助手是否以模擬方式執行,型態:布林
模擬資料路徑:於專案執行路徑下建立「Simulation」資料匣放置,相關檔案資訊如下:
authorizelist.json:模擬AuthorizeList企業約定授權申請清單API回傳資訊
於authorizelist.json設定回傳之清單,需於「AuthorizeGet」資料匣放置對應案號之json資訊作為模擬AuthorizeGet企業約定授權申請資訊API回傳資訊
authorizereply.json:模擬AuthorizeReply企業約定授權申請回覆API回傳資訊
欲回覆之企業約定授權申請案件資訊,需於「AuthorizeReply」資料匣放置對應回覆案號之encrypt資訊作為模擬AuthorizeReply企業約定授權申請回覆資訊API回傳資訊。以欲回覆之案件內容json經AESEncoder加密後即為encrypt文件內容
authorizesuspendlist.json:模擬AuthorizeSuspendList企業約定授權終止申請清單API回傳資訊
於authorizesuspendlist.json設定回傳之清單,需於「AuthorizeSuspendGet」資料匣放置對應案號之json資訊作為模擬AuthorizeSuspendGet企業約定授權終止申請資訊API回傳資訊
challenge.json:模擬Challenge驗證登入API回傳資訊
checkin.json:模擬CheckIn登入API回傳資訊
checkout.json:模擬CheckOut登出API回傳資訊
circularizationlist.json:模擬CircularizationList詢證函查詢申請清單API回傳資訊
於circularizationlist.json設定回傳之清單,需於「CircularizationGet」資料匣放置對應案號之json資訊作為模擬CircularizationGet詢證函查詢申請資訊API回傳資訊
circularizationreply.json:模擬CircularizationReply詢證函查詢申請回覆API回傳資訊
欲回覆之詢證函查詢申請案件資訊,需於「CreatePdf」資料匣放置對應回覆案號之pdf文件作為模擬CreatePdf建立詢證函文件API回傳資訊
欲回覆之詢證函查詢申請案件資訊,需於「CircularizationReply」資料匣放置對應回覆案號之encrypt資訊作為模擬CircularizationReply詢證函查詢申請回覆資訊API回傳資訊。以欲回覆之案件內容json經AESEncoder加密後即為encrypt文件內容
queryapplicationcert.json:模擬QueryApplicationCert應用程式憑證查詢API回傳資訊