ErpCore是一套強大的雲計算ERP開發框架,集數據庫設計、軟件建模、模型自動生成、界面可視化設計、業務流可自定義、全自動生成用戶所需系統於一體。在此框架上擴展出全部行業的業務系統,它讓軟件工程師從「建模——寫代碼——測試」全部繁瑣重複的工做變爲全自動化生成,大大簡化了企業軟件的開發時間和成本;同時,使用該框架擴展的全部業務子系統可以無縫鏈接進行數據共享,這也是雲計算ERP的實現基礎,杜絕了傳統ERP的子系統信息孤島的弊端,真正實現無縫整合企業的全部資源進行管理。前端
靈活的自定義對象功能解決了傳統ERP由軟件廠商定死業務規則的弊端,業務流規則將變成企業本身自定義,知足國內不一樣企業存在不一樣工做業務流、或者同一個企業不一樣時期的業務流變更狀況。jquery
功能描述:數據庫
一、自動建模編程
框架內部帶有虛擬數據庫系統,用戶可在虛擬數據庫上建立表、字段、表間關聯,企業根據本身的具體業務需求構建合適的數據庫架構,即經過自動化實現銷售業務人員將能完成DBA的工做。業務流程將變成企業自定義。後端
二、自定義對象緩存
對應於虛擬數據庫上建立表、字段、表間關聯,用戶可自定義對象、對象屬性、對象關聯。奠基了能夠擴展出符合全部行業全部業務系統可能性。安全
三、窗體表單可視化設計服務器
經過拖拽拉的方式,業務人員便可建立軟件使用界面,把界面關聯起來便可實現不用編碼就能建立所需的業務系統。網絡
四、全自動建立子系統架構
管理員在後臺經過建立對象、建立窗體,並集成成一個子系統,普通使用人員就能使用子系統進行工做,不需額外開發工做。
五、雲計算提升效率
系統可擴展出分佈式存儲計算,可集成多數據庫服務器,完美解決傳統ERP的單數據庫服務器的統計效率問題。
六、系統擴展及二次開發
從框架的業務基類派生出更高一層的業務模型,企業的軟件開發人員快速開發出個性化功能的模型對象,知足不一樣企業的個性需求功能,並能與整個ERP系統無縫數據共享,真正把全部企業資源整合成一體。
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通訊框架,包含服務端組件、客戶端組件和Agent組件,普遍適用於各類不一樣應用場景的 TCP/UDP/HTTP 通訊系統,提供 C/C++、C#、Delphi、E(易語言)、Java、Python 等編程語言接口。HP-Socket 對通訊層實現徹底封裝,應用程序沒必要關注通訊層的任何細節;HP-Socket 提供基於事件通知模型的 API 接口,能很是簡單高效地整合到新舊應用程序中。
爲了讓使用者能方便快速地學習和使用 HP-Socket ,迅速掌握框架的設計思想和使用方法,特此精心製做了大量 Demo 示例(如:PUSH 模型示例、PULL 模型示例、PACK 模型示例、性能測試示例以及其它編程語言示例)。HP-Socket 目前運行在 Windows 平臺,未來會實現跨平臺支持。
(加入技術支持羣)
HP-Socket 的設計充分注重功能、通用型、易用性與伸縮性:
通用性
易用性
高性能
伸縮性
應用程序可以根據不一樣的容量要求、通訊規模和資源情況等現實場景調整 HP-Socket 的各項性能參數(如:工做線程的數量、緩存池的大小、發送模式和接收模式等),優化資源配置,在知足應用需求的同時沒必要過分浪費資源。
* Server 組件執行流程
* Agent 組件執行流程
* Client 組件執行流程
NFine技術介紹:
一、前端技術
JS框架:jquery-2.1.一、Bootstrap.js、JQuery UI
CSS框架:Bootstrap v3.3.4(穩定是後臺,UI方面根據需求本身升級改造吧)。
客戶端驗證:jQuery Validation Plugin 1.9.0。
在線編輯器:ckeditor、simditor
上傳文件:Uploadify v3.2.1
動態頁籤:Jerichotab(本身改造)
數據表格:jqGrid、Bootstrap Talbe
對話框:layer-v2.3
下拉選擇框:jQuery Select2
樹結構控件:jQuery zTree、jQuery wdtree
頁面佈局:jquery.layout.js 1.4.4
圖表插件:echarts、highcharts
日期控件: My97DatePicker
二、後端技術
核心框架:ASP.NET MVC五、WEB API
持久層框架:EntityFramework 6.0
定時計劃任務:Quartz.Net組件
安全支持:過濾器、Sql注入、請求僞造
服務端驗證:實體模型驗證、本身封裝Validator
緩存框架:微軟自帶Cache、Redis
日誌管理:Log4net、登陸日誌、操做日誌
工具類:NPOI、Newtonsoft.Json、驗證碼、豐富公共相似
OSGi.NET 詳細介紹
這是實現的一套基於OSGi規範的C#基礎框架-OSGi.NET,而且用Go語言初步實現了插件的管理平臺-插件倉庫。在幾個中小型項目中有所應用(Winform、WPF),主要能夠解決多人協做的開發規範與插件的管理問題。
更多說明: http://www.diginfo.me/osgi-net-implement
簡介:
OSGi.NET框架是一個參照了OSGi規範的模塊化管理框架。框架爲應用程序擴展(組件(bundle))提供了一個標準環境。整個框架能夠劃分爲一些層次:
目前OSGi.NET具備以下特點:
啓動一個OSGi.NET應用程序僅須要以下代碼
using System;
using OSGi.NET.Core.Root;
namespace ConsoleDemo
{
class Program
{
static void Main(string[] args)
{
//建立框架工廠
var frameworkFactory = new FrameworkFactory();
//建立框架內核
var framework = frameworkFactory.CreateFramework();
//初始化框架
framework.Init();
//啓動框架
framework.Start();
Console.ReadLine();
}
}
}
建立一個OSGi.NET項目須要:
OSGi.NET項目的默認文件目錄結構以下
/程序目錄
/程序目錄/Bundles/
/程序目錄/Bundles/模塊A/
/程序目錄/Bundles/模塊A/Manifest.xml
/程序目錄/Bundles/模塊A/模塊A.dll
/程序目錄/Bundles/模塊A/Libs/
/程序目錄/Bundles/模塊A/Libs/* .dll
/程序目錄/Bundles/模塊B/
/程序目錄/Bundles/模塊C/
/程序目錄/Libs/(可選)
/程序目錄/OSGi.NET.properties
注:
程序目錄中的Libs文件夾存放個Bundles的共享程序集(也可經過在配置文件中配置共享清單),如接口契約、公共第三方類庫等。
模塊A中的Libs文件夾存放其私有程序集。
Manifest.xml做爲程序清單文件對模塊進行自描述。
OSGi.NET.properties爲框架內核配置文件
關於加載次序:
因爲業務需求,各模塊存在依賴關係的可能,因此模塊加載也會有加載順序的要求,此時能夠經過清單文件中Manifest.xml,Bundle節點的StartLevel屬性對其加載次序進行設置。數值越小,加載越前。
關於Bundle引用程序集搜索原則:
ServerSuperIO 簡稱 SSIO ,是一個 C# 跨平臺物聯網通信框架。
一.SSIO的特色
10. 支持跨平臺部署,能夠運行在Linux和Windows系統。
二.SSIO概述
SSIO通訊框架的設計思想是在SuperIO(SIO)基礎上發展而來,並無高大上的技術,主要是工做經驗的積累,適合於不一樣應用場景的物聯網的數據 採集與交互。SSIO和SIO並非簡單的對IO高性能的操做,而是設備驅動、IO通道、控制模式和實際硬件設備之間的協調機制,各方面之間無縫銜接和運 行,也是爲了解決現實工做和應用場景的一些痛點。
軟硬件之間的數據交互,而且面臨着複雜的現場環境:
(1)複雜的、多樣的通信協議。有標準的協議,例如:Modbus等,也有不少根據標準協議修改的協議格式、以及自定義協議格式,而且千差萬別。對於很差的軟件架構,疲於應對,增長設備或協議要對整個軟件進行梳理,每每在此過程當中出現新的問題或BUG。
(2)針對不一樣用戶對軟件界面或功能的要求有很大不一樣,使之知足不一樣用戶的顯示要求,能夠自定義數據顯示界面。那麼就須要提供顯示視圖接口,與設備驅動進行交互。
(3)既然現場設備的數據被採集上來,那麼就須要對其進行處理,不只僅是保存、查詢、報表等,還有:數據轉發、數據輸出(OPC、模擬量、大屏等)等。那麼就須要提供服務性的接口,與設備驅動進行交互。
(4)通信鏈路的多種性,對於同一個設備可能要支持RS232/RS485/RS42二、RJ4五、3G/4G等通信方式,因此對於一個設備要對應多種通信方式(串口和網絡),也給咱們的開發形成很大的障礙。
(5)設備驅動、IO通道和實際的現場硬件終端之間鏈路複雜,有可能:一個設備驅動對應一個IO通道、一個設備驅動對應多個IO通道、多個設備驅動對應一個IO通道等狀況。
(6)既然設備與服務端進行數據交互,那麼就應該對設備的通信狀態、IO狀態、以及設備自己的狀態進行監控,這樣設備才處於可維護狀態。
(7)軟件各版本、以及軟件與硬件之間的兼容性不好,管理起來錯綜複雜。在框架平臺穩定的狀況下,只須要更新設備驅動。
爲了解決以上諸多問題,開發一個軟件框架,支持二次開發。在不對軟件框架改動的狀況下,可以很方便的接入設備、維護設備、集成設備、處理設備業務數據等。軟件框架相對穩定,把容易變化的部分進行靈活設計。
三.控制模式
(1)輪詢模式:當串口和網絡通信時均可以使用這種控制模式。當有多個設備 鏈接到通信平臺時,通信平臺會輪詢調度設備進行通信任務。某一時刻只能有一個設備發送請求命令、等待接收返回數據,這個設備完成發送、接收(若是遇到超時 狀況,則自動返回)後,下一個設備才進行通信任務,依次輪詢設備。以下圖:
(2)併發模式:只有網絡通信時可使用這種控制模式。併發通信模式是集中 發送全部設備的請求指令,框架是採用循環同步方式發送請求命令。還有進一步提升的機會,採用並行異步方式集中發送請求命令。硬件設備接收到指令後進行校 驗,校驗成功後返回對應指令的數據,通信平臺異步監聽到數據信息後,進行接收操做,而後再進行數據的分發、處理等。以下圖:
(3)自控模式:只有網絡通信時可使用這種控制模式。自控通信模式與併發 通信模式相似,區別在於發送指令操做交給設備驅動自己進行控制,或者說交給二次開發者,二次開發者能夠經過時鐘定時用事件驅動的方式發送指令數據。硬件設 備接收到指令後進行校驗,校驗成功後返回對應指令的數據,通信平臺異步監聽到數據信息後,進行接收操做,而後再進行數據的分發、處理等。
自控通信模式能夠爲二次開發者提供精確的定時請求實時數據機制,使通信機制更靈活、自主,若是多個設備驅動使用同一個IO通道的話,時間控制會有誤差。以下圖:
(4)單例模式:只有網絡通信時可使用這種控制模式。在一個服務實例內只 能有一個設備驅動,至關於一個設備驅動對應着N多個硬件設備終端。更適合通信的數據協議有固定的標準,以命令關鍵字處理不一樣的數據。適用於高併發的硬件終 端設備主動上傳數據,服務器端根據數據信息進行處理和返回相應的數據。以下圖:
四.跨平臺Windows和Linux
(1)Windows運行效果
(2)Linux運行效果
NPOI 是 POI 項目的 .NET 版本。POI是一個開源的Java讀寫Excel、WORD等微軟OLE2組件文檔的項目。
使用 NPOI 你就能夠在沒有安裝 Office 或者相應環境的機器上對 WORD/EXCEL 文檔進行讀寫。