Equinox 项目介绍
项目概述
Equinox 项目是一个开源项目,使用 .NET Core 技术开发。这个项目的目标是实现常用的技术,并与技术社区分享使用 .NET 开发优秀应用程序的最佳实践。
项目特色
如果你喜欢这个项目或者 Equinox 对你有帮助,可以在项目页面上点赞(给星星)。Eduardo Pires 提供了在线课程帮助大家深入学习开发技巧。
使用方法
要使用 Equinox 项目,你需要最新的 Visual Studio 2022 和最新的 .NET Core SDK。请确保安装的运行时版本和 global.json 中描述的 SDK 版本一致。最新的 SDK 和工具可以从 .NET 官方网站下载。此外,你还可以在 Visual Studio Code(Windows、Linux 或 MacOS)中运行 Equinox 项目。
实现的技术
Equinox 项目使用了多种先进的技术,包括:
- ASP.NET 8.0
- 包括 ASP.NET MVC Core 和使用 JWT 验证的 WebApi Core
- ASP.NET Identity Core
- Entity Framework Core 8.0
- .NET Core 原生依赖注入 (DI)
- AutoMapper 和 FluentValidator
- MediatR
- 带有 JWT 支持的 Swagger UI
- .NET 开发包 (DevPack)
架构设计
Equinox 项目采用了全面架构设计,包括:
- 责任分离关注点、SOLID 和清晰代码原则
- 领域驱动设计 (DDD),包括层次结构和领域模型模式
- 领域事件、通知和验证
- 即时一致性 CQRS 模式
- 事件溯源、工作单元和存储库设计
版本更新日志
Equinox 项目定期更新以保持技术先进性:
- v1.9 - 2024年6月31日:迁移到 .NET 8.0,全面重构 Web 和 API 配置,所有 ASP.NET Identity 配置均已集成到项目中,所有依赖项已更新。
- v1.8 - 2022年3月22日:迁移到 .NET 6.0,所有依赖项已更新。
- v1.7 - 2021年4月6日:迁移到 .NET 5.0,所有依赖项已更新。
- 此前版本也进行了类似的迁移升级和优化。
项目声明
Equinox 项目并不意在成为最终解决方案,使用时请注意生产环境的使用需求,避免过度工程化。
为什么命名为 Equinox?
Equinox 在天文学中是地球赤道平面经过太阳中心的事件,一年发生两次。这也暗示着项目致力于技术的均衡与完美。
贡献与联系
欢迎联系项目负责人进行合作交流,但请不要提交额外功能的 Pull-Request,所有新功能都有计划。
联系与在线
项目可以在线运行,并由 Eduardo Pires 开发,采用 MIT 许可证发布。