源码系统概览
文章正文
Moments 是一套基于 ASP.NET Core 7 开发的个人博客与动态分享程序。
它在 Razor Pages 与 MVC 两种模式之上组织页面,把写文章、发动态和好友互动放在同一个站点里。
本次整理的源码包含完整的 Controllers、Pages、Models、Service 与 Component 目录,可以直接在本地编译运行。
源码简介
Moments 的项目文件是 Moments.sln 与 Moments.csproj,目标框架为 net7.0,使用 C# 与 Razor 视图。
数据层采用 FreeSql 搭配 SQLite 提供器,方便单机部署,不需要额外安装数据库服务。
前端界面基于 Masa.Blazor 组件库构建,界面风格偏现代卡片式,同时保留了 Razor 服务端渲染的能力。
项目里带有 .github 工作流,内置了 docker.yml 与 dotnet.yml,说明作者已经配好了容器化与持续集成的基础配置。
从目录结构看,源码包含 65 个文件,涵盖页面、模型、服务与静态资源,是一份比较完整的 .NET 个人站点样本。
适用场景
第一类场景是个人博客,用来写文章和记录日常,发布流程和普通博客系统一致。
第二类是轻社交动态,借助好友关系可以互相关注并查看对方的公开动态。
第三类是内部小圈子的信息流,团队或兴趣小组可以用它做轻量的动态分享。
第四类是学习 .NET 全栈,想研究 Razor Pages、FreeSql 与 Blazor 组件如何组合的人可以把它当样例。
功能亮点
动态发布支持文字内容,配合好友关系形成可关注的信息流,体验接近常见的朋友圈。
后台管理页面集中在 Pages/Admin 目录下,可以处理内容与基础设置。
数据导出能力体现在 wwwroot/export 目录,程序会把好友等数据生成 CSV 文件便于备份。
依赖注入与分层结构清晰,Controllers、Service、Model 各司其职,二次开发时容易定位代码。
内置 Docker 与 CI 配置,部署到 Linux 服务器或容器平台时不需要从零搭环境。
技术架构与部署指南
| 维度 | 本套源码 | 同类通用方案 |
|---|---|---|
| 技术栈 | 前端:Razor Pages 服务端渲染,界面组件基于 Masa.Blazor 后端:ASP.NET Core 7(n |
依具体方案选型,需自行搭建与维护 |
| 部署方式 | 先安装 .NET 7 SDK,在项目根目录执行 dotnet restore 还原依赖包。 | 多托管于第三方平台或订阅云服务 |
| 功能侧重 | 动态发布支持文字内容,配合好友关系形成可关注的信息流,体验接近常见的朋友圈。 | 功能通用,定制深度有限 |
| 数据归属 | 数据自持,部署在自有服务器,不出站 | 数据通常留存于服务商侧 |
| 成本模式 | 获取后自主部署,无持续授权费用 | 通常按订阅或调用量计费 |
技术栈与运行环境
前端:Razor Pages 服务端渲染,界面组件基于 Masa.Blazor
后端:ASP.NET Core 7(net7.0),使用 C# 与 Razor
数据库:SQLite,通过 FreeSql ORM 访问,无需独立数据库服务
运行环境:.NET 7 SDK,可运行于 Windows、Linux 或 macOS,推荐部署在 Linux 加 Nginx 反向代理
其他依赖:Flurl.Http 负责外部接口调用,Newtonsoft.Json 处理 JSON,Docker 用于容器化部署
安装与部署提示
先安装 .NET 7 SDK,在项目根目录执行 dotnet restore 还原依赖包。
执行 dotnet run 或 dotnet build 后在本地浏览器打开默认端口即可看到站点。
数据库使用 SQLite,首次运行会自动生成数据文件,无需手动建库。
如果走容器部署,可以用仓库里的 docker.yml 工作流或自行编写 Dockerfile 构建镜像。
上线前建议在 appsettings.json 里检查 AllowedHosts 与日志级别,避免把调试信息暴露到公网。
截图与演示说明
本源码没有附带独立预览截图,下面从代码结构描述可呈现的界面。
前端基于 Masa.Blazor 组件库,渲染后通常是卡片式信息流,顶部为导航,中部为动态列表,右侧或底部为好友与评论入口。
后台管理集中在 Pages/Admin 目录,可处理内容发布、基础设置与导出操作。
这类界面适合作为 ASP.NET Core 个人站点或轻社交程序的搭建参考,二次开发时可以照着现有的分层结构扩展模块。
常见问题
问这套程序需要安装数据库吗。
默认使用 SQLite,文件型数据库随程序自动创建,不需要单独安装 MySQL 或 SQL Server。
问没有 dotnet 环境能运行吗。
需要安装 .NET 7 SDK 才能编译和运行,Windows、Linux 与 macOS 都支持。
问数据怎么备份。
程序会把好友等数据导出到 wwwroot/export 目录下的 CSV 文件,直接复制这些文件即可备份。
安全风险提示
特别提示:本源码未做安全审计,下载后请务必进行安全评估,确认无恶意代码后再部署使用。
配置上注意 appsettings.json 的 AllowedHosts 不要长期保持星号开放,生产环境应限定具体域名。
对外暴露的后台管理页面建议增加登录鉴权,避免被未授权访问。
下载说明
源码仅供学习研究、测试部署和二次开发参考,商用前请自行确认授权、版权和安全风险。
本页面不提供任何网盘或第三方下载链接,请通过正规渠道获取源码,并在部署前自行完成安全评估与合规确认。