七夏 发表于 2024-11-24 19:20:00

.NET 8.0 开源在线考试系统(支持移动端)

## **前言**

推荐一款基于.NET 8.0 免费开源跨平台在线考试系统,系统不仅支持桌面端,还特别优化了移动端的用户体验。

通过本系统可以轻松搭建自己的在线考试平台,实现随时随地的测试与评估。

本文将详细介绍系统的功能特点、技术架构以及如何部署和使用。

**系统介绍**

支持跨平台、国产化部署。

支持国产人大金仓、达梦、OceanBase数据库 及 MySql、SqlServer、PostgreSql、SQLite 等常见数据库,极大地提高了项目的可移植性和适用范围。

系统不仅支持主流的操作系统,还特别针对国产化环境进行了优化,确保在多种国产操作系统上稳定运行。

**系统功能**

1、管理端首页

基本信息:展示当前账号的信息及欢迎语。

预览信息:查看管理员的基本资料。

修改信息:更新个人信息。

修改密码:更改登录密码。

退出登录:安全退出系统。

2、发布考试

支持多种考试模式(正式考试、模拟测试)。

提供灵活的试题生成方式(随机出题、手动选题、开考随机)。

支持自动与手动阅卷。

考试合格者可直接获得证书。

3、试卷管理

试卷分类:多级分类管理,支持批量操作。

发布考试:包括保存草稿、正式发布等功能。

复制:一键复制已有的试卷。

预览:查看试卷内容。

修改:编辑试卷信息。

启停用:控制试卷的状态。

删除:移除不再需要的试卷。

4、阅卷

阅卷:对主观题进行评分。

预览:查看阅卷情况。

考试管理:涵盖考生、成绩、阅卷进度、数据分析等方面。

5、考试管理

题型管理:提供单选、多选、判断、填空、简答题型,并支持扩展。

题库管理:批量导入/导出试题,支持预览。

证书管理:创建证书模板,支持拖拽定位及预览。

题目组:组织题目便于练习和组合成卷。

6、问卷调查

支持内部与外部问卷,后者可通过二维码填写。

发布:创建新的问卷。

复制:快速复制现有问卷。

预览:查看问卷设计。

修改:编辑问卷内容。

启停用:控制问卷的有效性。

删除:移除问卷。

问卷统计:生成统计图表。

7、其他功能

企业管理:包括组织架构调整、人员权限设定等。

系统管理:如管理员配置、用户设置、数据库维护、安全规则制定等。

日志管理:记录管理员操作、用户活动、系统错误,以及相关设置。

统计图表:展示用户登录频率、安全拦截次数等关键指标。

**支持环境**

支持的操作系统

1、Windows

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqaWlMbrYJpQNBm2OheS8od4rZSrh0CSffuGQ6Qms1iaQL2SYwCBbtWjdg/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

2、Linux

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqa8xbxZU73ASBmy69VGAzcqDN6PJKjrYe6JRuMqkf83iaibgSVjdYdUsjA/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

#### 支持的数据库

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqaN1TnpruHGfDibYFbAItoGFmibiceNj6f5uoU9vQzfhEtdddm5EHcNPkcQ/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

**系统源码**

系统代码组织框架结构,如下所示:

<pre data-tool="mdnice编辑器"><p class="js_darkmode__8"><span>├── src (源代码)<br/>│   ├── Datory (数据库基础类)<br/>│   ├── XBLMS (接口基础类)<br/>│   ├── XBLMS.Core (核心代码)<br/>│   ├── XBLMS.Web (UI)<br/>│   │   ├── wwwroot (对外访问目录)<br/>│   │   ├── Controllers (WebApi)<br/>│   │   ├── <span>log</span> (运行日志)<br/>│   │   ├── Pages (页面)<br/>│   │   ├── appsettings.json (配置文件)<br/>│   │   ├── web.config (配置文件,非IIS部署可以删除)<br/>│   │   ├── xblms.json (配置文件)<br/>├── appsettings.json (配置文件)<br/>├── build.sln (解决方案,用于发布)<br/>├── gulpfile.js (配置文件,用于发布)<br/>├── xblms.sln (解决方案,用于开发)</span></p></pre>

## 项目部署

发布跨平台版本,为了构建和发布适用于不同操作系统的XBLMS,请遵循以下步骤:

Windows (x64)

1、执行以下命令来安装依赖项、构建前端资源、编译.NET解决方案并发布.NET Core应用程序:

<pre data-tool="mdnice编辑器"><p class="js_darkmode__10"><span>npm install<br/>npm run build-win-x64<br/>dotnet build ./build-win-x64/build.sln -c Release<br/>dotnet publish ./build-win-x64/src/XBLMS.Web/XBLMS.Web.csproj -r win-x64 -c Release -o ./publish/xblms-win-x64</span></p></pre>

2、然后进入发布目录获取部署文件

<pre data-tool="mdnice编辑器"><p class="js_darkmode__11"><span><span>cd</span> ./publish/xblms-win-x64</span></p></pre>

#### Linux (x64)

1、执行以下命令来安装依赖项、构建前端资源、编译.NET解决方案并发布.NET Core应用程序:

<pre data-tool="mdnice编辑器"><p class="js_darkmode__12"><span>npm install<br/>npm run build-linux-x64<br/>dotnet build ./build-linux-x64/build.sln -c Release<br/>dotnet publish ./build-linux-x64/src/XBLMS.Web/XBLMS.Web.csproj -r linux-x64 -c Release -o ./publish/xblms-linux-x64</span></p></pre>

2、然后进入发布目录获取部署文件

<pre data-tool="mdnice编辑器"><p class="js_darkmode__13"><span><span>cd</span> ./publish/xblms-linux-x64</span></p></pre>

#### **注意事项**

* 确保所有依赖项都已正确安装。
* 在执行构建命令之前,请检查 `<span>.csproj</span>`文件中的路径是否正确。
* 如果需要针对不同的Linux发行版进行交叉编译,可能还需要额外的步骤来设置正确的交叉编译工具链。
* 确认 `<span>.NET SDK</span>`版本与项目要求相符。
* 对于Linux环境,建议在一个与目标系统相同架构的机器上进行构建,以避免潜在的二进制兼容性问题。

**发布和部署手册:**https://gitee.com/xblms/xblms/tree/master/部署手册

**项目效果**

演示环境为单机构版本,多机构版本麻烦自己在本地运行代码体验。

主要区别在于按公司和部门进行权限划分,各自管理和组织考试。

管理端

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqalo4fqQnRhRichcjvteGfLD7bfMHHGskNDBpDlfptd6lRBvjbTC848PQ/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqaT66lRO5ZhVDvXXVz7Zeue54pOE9bGxgKjcNzy6lhhqBJia0G9NKz7QA/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqaG4EsAtweeTOib9IJsmh77wLTd3Oiaur91CnrvIybAMHL97HjTiaDw1TtA/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

#### 用户端

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqaYCY4sVz8dUqyBJlOE8YxDQicbg2X8za6bSwCEpu86OUcHghII1MBBew/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqadDhe7PbBq4JMUz6bLIpsAJm1vA65bRtpNcQsvicpCSGw79DgAKDA81g/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqaLqSLKL77q72pDtAKNvlgnDbhw3hxJxXvmZpQELOaDJSFs0B4LrjEJA/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

移动端

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_png/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqa1kcUaZnNlaIZ9LfkKDAL1nfUYlnqprW3vibub1ic9lexwuA9dibOVDH1A/640?wx_fmt=png&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

![图片](https://www.3bbs.cn/index-diy/img.php?url=https://mmbiz.qpic.cn/sz_mmbiz_jpg/oicJiaCwicKClnicUTts0fl8qAMbaqfUfKqadYXeSmxFxnBM7VLh45jJU01ahmqkzJdgbXdCNd9cCHaFkuWZv5ibz2g/640?wx_fmt=jpeg&from=appmsg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1)

#### 注意事项

由于演示环境限制,同一个账号不能同时在多个设备上登录。

如果突然被强制离线,可能是其他用户登录了同一账号,请重新登录尝试。

**项目总结**

本文展示了部分功能和内容,如有需求访问项目地址获取详细信息。希望本文能在考试系统开发方面为各位提供有益的帮助。期待大家在评论区留言交流,分享您的宝贵经验和建议。

**项目地址**

Gitee:https://gitee.com/xblms/xblmes
页: [1]
查看完整版本: .NET 8.0 开源在线考试系统(支持移动端)