ZY树洞

前言

ZY树洞是一个基于.NET Core开发的简单的评论系统,主要用于大家分享自己心中的感悟、经验、心得、想法等。

好了,不卖关子了,这个项目其实是上班无聊的时候写的,为什么要写这个项目呢?因为我单纯的想吐槽一下工作中的不满而已。

项目介绍

项目很简单,主要功能就是提供一个简单的评论系统,用户可以发布自己的评论,然后评论以弹幕的形式展示在页面上。

项目后端地址:

项目前端页面地址:

目前项目测试访问地址:

项目特点

  • 基于.NET Core开发,跨平台
  • 简单易用,界面简洁
  • 匿名评论,不用注册即可发表评论
  • 弹幕效果,评论以弹幕的形式展示在页面上

主要技术

  • ASP.NET Core Web API
  • Entity Framework Core
  • Sql Server数据库 | Sqlite3数据库
  • Vue.js

项目结构

  • ZYTreeHole 主项目
  • ZYTreeHole.Tests 集成测试
  • ZYTreeHole_Services 服务层
  • ZYTreeHole_Models 模型层

项目截图

后端部署

创建数据库,默认用的是sqlite3数据库,如需更改要自行替换连接字符串。连接字符串分为2部分,appsetting.json中的用于项目访问数据库,而Models中的MyDbContextDesignFac类用于CodeFirst模式生成数据库。

如果不更换数据库则不需要更改

直接使用终端,进入ZYTreeHole_Models目录输入:

dotnet ef migrations add Init //生成迁移文件
dotnet ef database update //更新数据库

使用dotnet语句需安装.NET SDK

完成数据库生成后,会在Models层生成一个app.db文件,将该文件剪切到ZYTreeHole 主项目里面去就行了。完成上述步骤即可开始部署,将项目打包成文件夹形式,这里就不多讲了。

我是采用的Docker部署,DockerFile文件项目已经包含进去了。

在打包后端路径中打开终端执行,默认部署为44323端口。

docker build -t treehole . --下载镜像
docker run -d -p 44323:44323 -v /...替换成你的打包路径/treehole:/src --name treehole treehole --创建容器

Docker镜像无法下载问题解决

相关链接:国内镜像源下架的解决办法-米续硬 (mixuying.com)

待完成的点

  • 评论限流

  • 关键词过滤

  • 将前端弹幕设置滚动频率、速度等写入配置文件或者数据库。

  • 完成后台管理模块的编写。

  • 前端页面美化

欢迎各位提提意见

参考链接

.NET Core搭配Vue开源弹幕效果,实现一个评论小项目。好玩!的更多相关文章

  1. Vue.js基础篇实战--一个ToDoList小应用

    距离开始学Vue已经过去一个多月了,总想把学到的东西柔和在一起,做点东西出来,于是有了这个Todolist小应用. 使用vuex 纯粹基础,没有用到web pack,vuex,npm,下次把它改造一下 ...

  2. 基于vue 、vue-router 、firebase的todolist小项目

    第一次写博客,都不知道改怎么写的好. 本着一颗学习的心,也希望一段时间后再回来在看看自己写的代码,会不会让自己有种不忍直视的念头 *-* 还是先上图吧~ 这是首页,主要是展示所有的列表页面,可以通过输 ...

  3. 一个 Vue & Node 的全栈小项目

    约学 - 可以寻找一起自习的小伙伴的Web APP 一个基于 Vue & Node 的移动端全栈小项目 在线演示(请使用移动端查看效果) 源码地址: https://github.com/G- ...

  4. 使用.NET Core和Vue搭建WebSocket聊天室

    博客地址是:https://qinyuanpei.github.io.  WebSocket是HTML5标准中的一部分,从Socket这个字眼我们就可以知道,这是一种网络通信协议.WebSocket是 ...

  5. .NET Core/.NET5/.NET6 开源项目汇总4:CMS、Blog项目

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

  6. .NET Core/.NET5/.NET6 开源项目汇总5:权限管理系统项目

    系列目录     [已更新最新开发文章,点击查看详细] 企业管理系统一般包含后台管理UI.组织机构管理.权限管理.日志.数据访问.表单.工作流等常用必备功能.下面收集的几款优秀开源的管理系统,值得大家 ...

  7. android 弹幕效果demo

    记得之前有位朋友在我的公众号里问过我,像直播的那种弹幕功能该如何实现?如今直播行业确实是非常火爆啊,大大小小的公司都要涉足一下直播的领域,用斗鱼的话来讲,现在就是千播之战.而弹幕则无疑是直播功能当中最 ...

  8. Vue开源项目库汇总

    最近做了一个Vue开源项目库汇总,里面集合了OpenDigg 上的优质的Vue开源项目库,方便移动开发人员便捷的找到自己需要的项目工具等,感兴趣的可以到GitHub上给个star. UI组件 elem ...

  9. Android弹幕功能实现,模仿斗鱼直播的弹幕效果

    转载出处:http://blog.csdn.net/sinyu890807/article/details/51933728 本文同步发表于我的微信公众号,扫一扫文章底部的二维码或在微信搜索 郭霖 即 ...

  10. 2018年度 35 个最好用 Vue 开源库

    在本文中,我们将推荐一些非常好用的 Vue 相关的开源项目.无论是开发新手还是经验丰富的老手,我们都喜欢开源软件包.对于开发者来说,如果没有这些开源软件包,很难想象我们的生活会变得多么疲惫不堪,而且靠 ...

随机推荐

  1. 新一代Java高性能构建工具Maven-mvnd【实践可行版】

    Maven-mvnd介绍 Maven 的优点是稳定可靠,在绝大多数的项目上工作良好,社区生态很完善,几乎所有的 Java 开发者都在用.Maven 的缺点是,对于大一点的项目来说,构建太慢了.有时候只 ...

  2. Jenkins插件管理(Manager Plugins)【快速提升项目构建和部署实施的工作效率】

    Jenkins 是一个很棒的开源自动化平台.它有一些开箱即用的强大功能.然而,在我看来,让它脱颖而出的是它的社区和它开发的插件.有超过一千个插件可用于支持几乎所有用于构建.部署和自动化项目的技术.工具 ...

  3. Service Mesh Summit 回顾 | 轻舟服务网格的无侵入增强 Istio 经验

    在云原生社区近日主办的 Service Mesh Summit 2022 服务网格峰会上,网易数帆云原生技术专家方志恒分享了轻舟服务网格无侵入增强 Istio 的经验,本文据此次分享整理,介绍了对无侵 ...

  4. TP3.2与TP5.0的区别

    1. 控制器输出return $this->fetch(); ----5$this->display(); ----3.2单字母函数去掉了 如:M() D() U() S() C() 3. ...

  5. oeasy教您玩转vim - 79 - # 编码格式encoding

    ​ ​ - `help encoding-name` ​ ![图片描述](https://s4.51cto.com/images/blog/202201/03083053_61d243bd719358 ...

  6. Python 实现行为驱动开发 (BDD) 自动化测试详解

    ​ 在当今的软件开发领域,行为驱动开发(Behavior Driven Development,BDD)作为一种新兴的测试方法,逐渐受到越来越多开发者的关注和青睐.Python作为一门功能强大且易于使 ...

  7. Activity活动生命相关

    启动与结束 页面跳转: startActivity(new Intent(this,xxxx.class)); 关闭当前界面返回上一界面 finish(); //这里我在使用finish遇到一个问题, ...

  8. 题解 WD与数列

    P5161 WD与数列 可以想到原条件是一个差分形式,所以我们对原数组差分.然后发现答案其实就是 \(\sum_{i<j} \min(lcp(i+1,j+1)+1,j-i)\). 这个东西先跑 ...

  9. ios的idp/iep证书的生成方法,无苹果电脑

    在这个多端开发的年代,出现了很多优秀的开发框架,比如hbuilder和uniapp等等.我们可以使用这些框架来开发APP,假如我们要打包ios的app,则需要一个idp/iep证书. 那么这个证书是如 ...

  10. 测试环境配置https+端口访问留存

    步骤1:阿里云DNS配置本地公网IP解析 步骤2:本地局域网192.168.1.10服务器配置nginx server { listen 8090 ssl; server_name localhost ...