https://github.com/leijunshiwoer/avalonia.getstartedapp
Avalonia 开发的跨平台项目 原WPF项目改 上位机项目
https://github.com/leijunshiwoer/avalonia.getstartedapp
avaloniaui csharp prism sqlsugar upper-computer-software
Last synced: about 2 months ago
JSON representation
Avalonia 开发的跨平台项目 原WPF项目改 上位机项目
- Host: GitHub
- URL: https://github.com/leijunshiwoer/avalonia.getstartedapp
- Owner: Leijunshiwoer
- License: mit
- Created: 2025-07-04T08:54:01.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-08-07T09:08:19.000Z (11 months ago)
- Last Synced: 2025-08-07T11:20:55.593Z (11 months ago)
- Topics: avaloniaui, csharp, prism, sqlsugar, upper-computer-software
- Language: C#
- Homepage:
- Size: 13.8 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Avalonia.GetStartedApp 项目简介
## 项目概述
Avalonia.GetStartedApp 是一款基于 Avalonia UI 框架开发的跨平台工业应用程序,采用现代化 MVVM 架构设计,专注于工业自动化领域的数据采集、设备通信与监控管理。该项目支持 Windows 桌面端与 Web 浏览器双平台部署,具备强大的可扩展性和模块化设计。
## 核心功能
- **多平台支持**:同时支持桌面应用(Windows)和 Web 浏览器运行模式
- **工业设备通信**:集成西门子、欧姆龙、三菱、倍福等主流 PLC 通信协议
- **用户权限管理**:基于角色的访问控制(RBAC)系统,支持用户认证与权限分配
- **数据管理**:通过 SqlSugar ORM 框架实现与 MySQL 数据库的高效交互
- **实时监控**:PLC 数据实时采集与事件日志记录
- **自动更新**:集成 Velopack 框架实现应用程序自动更新
- **日志系统**:基于 Serilog 的全面日志记录与异常处理机制
## 技术架构
### 技术栈
| 类别 | 核心技术 |
|--------------|--------------------------------------------------------------------------|
| UI 框架 | Avalonia UI 11.3.3 |
| MVVM 框架 | Prism + CommunityToolkit.Mvvm |
| 依赖注入 | DryIoc |
| 数据访问 | SqlSugar (MySQL) |
| 日志系统 | Serilog |
| 通信协议 | MQTT、OPC UA、Siemens S7 Protocol |
| 自动更新 | Velopack |
| 图标支持 | Material Design Icons |
### 项目结构
```
Avalonia.GetStartedApp/
├── GetStartedApp # 主应用模块(UI、ViewModel、业务逻辑)
├── GetStartedApp.Desktop # 桌面应用入口
├── GetStartedApp.Browser # Web浏览器应用入口
├── GetStartedApp.SqlSugar # 数据访问层
├── GetStartedApp.Core # 核心工具类
└── SmartCommunicationForExcel # 工业通信组件
```
## 应用场景
- 工业自动化设备监控系统
- 生产数据采集与分析平台
- 智能制造执行系统(MES)前端
- 工业物联网(IIoT)数据网关
## 特点优势
1. **跨平台部署**:一次开发,同时支持桌面与Web端运行
2. **模块化设计**:各功能模块解耦,便于维护与扩展
3. **工业级稳定性**:完善的异常处理与日志记录机制
4. **丰富的通信接口**:支持多种工业设备协议与数据库
5. **现代化UI**:基于Avalonia的美观界面,支持主题定制
## 快速启动
### 桌面端
```bash
cd GetStartedApp.Desktop
dotnet run
```
### Web端
```bash
cd GetStartedApp.Browser
dotnet run
```
## 版权信息
本项目采用 MIT 开源协议,详情参见 LICENSE 文件。
wiki [](https://deepwiki.com/Leijunshiwoer/Avalonia.GetStartedApp)