# NetworkDetector **Repository Path**: Tigerworm/network-detector ## Basic Information - **Project Name**: NetworkDetector - **Description**: No description available - **Primary Language**: C# - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-15 - **Last Updated**: 2025-11-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Network Detector 一个基于 .NET 的网络状态检测与监控应用,采用 MVVM 架构组织代码。用于检测网络连通性、记录日志、并以可视化方式展示状态变化。 ## 功能特性 - 实时网络连通性检测(可扩展多种检测策略) - 结果可视化(基于 Views/ViewModels 的界面展示) - 自动日志记录(输出到 Data/logs 目录) - 模块化架构:Models / ViewModels / Views 清晰分层 - 可扩展的资源与主题(Assets 目录) ## 技术栈 - .NET 9 - MVVM 架构模式 - Windows 平台(已在 Windows 11 下开发/调试) ## 目录结构 ``` network-detector ├── Assets/ # 静态资源(图标、样式、图片等) ├── Data/ │ └── logs/ # 运行时日志输出目录 ├── Models/ # 领域模型与业务实体 ├── ViewModels/ # 视图模型(状态与命令) ├── Views/ # 视图(UI 层) ├── bin/Debug/ # 构建产物(调试) └── obj/Debug/net9.0/ # 中间产物 ``` ## 环境要求 - Windows 10/11 - .NET SDK 9.0+ - 推荐:Visual Studio 2022 17.10+(或 Rider / VS Code + C# 扩展) ## 快速开始 ### 1) 克隆仓库 ```powershell git clone cd network-detector ``` ### 2) 安装/验证 .NET SDK ```powershell dotnet --version ``` 确保版本为 9.x。 ### 3) 还原与构建 ```powershell dotnet restore dotnet build -c Debug ``` ### 4) 运行 - 如果是单项目仓库(根目录存在 .csproj): ```powershell dotnet run ``` - 如果有解决方案或多项目,请打开解决方案(.sln)或指定项目: ```powershell dotnet run --project .\路径\到\项目.csproj ``` - 也可在 Visual Studio 中打开解决方案,设定启动项目后按 F5 运行。 ## 发布应用 发布为 Windows x64 可执行: ```powershell dotnet publish -c Release -r win-x64 --self-contained false -o .\publish ``` 说明: - 将 `--self-contained false` 改为 `true` 可生成携带运行时的自包含包(体积更大、无需预装 .NET 运行时)。 ## 日志 - 运行日志默认输出至:`Data/logs/` - 建议在该目录下查看最新的 `.log` 文件以排查问题。 ## 架构与约定 - MVVM: - Views:仅负责 UI 展示与绑定 - ViewModels:状态管理与命令(ICommand) - Models:业务实体与数据结构 - 命名: - 视图与视图模型一一对应,如 `MainView` ↔ `MainViewModel` - 资源: - 公共样式、图标置于 `Assets/` ## 常见问题排查 - 无法运行:确认 .NET SDK 版本为 9.x 且使用 x64 版本 PowerShell/终端。 - 构建失败:先执行 `dotnet restore`,清理后重建 `dotnet clean; dotnet build -c Debug`。 - 无日志输出:确认进程对 `Data/logs/` 有写权限;首次运行会自动创建目录。 - UI 不显示数据:检查数据绑定与 ViewModel 是否正确实例化和设为 DataContext。 ## 贡献 欢迎提交 Issue 或 Pull Request。提交前请: - 遵循现有代码风格与目录结构 - 为关键逻辑添加必要注释与基础单元测试(如适用) ## 许可证 如未在仓库中另行声明,默认保留所有权利。可按需添加 `LICENSE` 文件指定许可证(例如 MIT)。 --- 如需在该项目上增加新功能(例如定时检测、托盘图标、网络丢包统计、代理/接口切换等),可在 Issues 中进行讨论。 ##调试命令 192.168.10.231 root,密码rootroot ssh root@192.168.10.231 scp -r 源文件目录 root@192.168.10.231:目的目录地址 chmod 777 -R *