基于AspNet Core2.0 开发框架,包含简单的个人博客Demo
大家好,最近离职了,利用闲暇时间就捣鼓了一个基于AspNet Core开发框架,分享出来希望能给AspNet Core学者带来一些帮助,同时也能跟大家一起学习。当然了,由于我的个人技术及经验的有限,框架还是有很多Bug或不足之处,希望各位大神或园友指出,我会继续完善的,可以通过这些方式联系到我qq:891022171、邮箱:lishuyiba@126.com
以下仅代表个人观点,与本人所在公司无关。
使用到的技术:AspNet Core 2.0 + EF +Auofac+ SqlServer2012 + Bootstrap + Layer + ace admin
根据的理解,目前我知道有三种比较好依赖注入管理的方式
1、 第一种、定义依赖注入接口,只要实现了该接口的都自动注入到IOC容器。
2、 第二种、定义特定的后缀,只要符合该特定后缀都自动注入到IOC容器。
3、 第三种、定义特性类,查找标识有该特性的类并注入到IOC容器。
我的项目使用了第一种,基本思路如下
程序启动时查找bin下所有的DLL并利用反射查找实现了IDependencyAutofacRegistrar接口的类注入到容器,实现解耦。
说明:
1、由于目前Core 2.0属于预览版,启动web项目时不能打开网页,可能跟版本有关,等正式版发布后,我再重新发布看看。。。。
2、想要VS2017能编译通过,要修改环境变量,添加MSBuildSdksPath,并设置 Core2.0 SDK的路径,下面是我本机的配置。。。 Core2.0 SDK下载地址:https://download.microsoft.com/download/3/7/F/37F1CA21-E5EE-4309-9714-E914703ED05A/dotnet-dev-win-x64.2.0.0-preview1-005977.exe
######################下面先来看看效果图吧###################
说明:下面这些效果图我是用Core 1.0 开发的,还有很多API没有加入。本次分享的项目是用Core2.0开发的,主要是因为Core2.0加入了好多以前.Net4.6的API(查询API:https://docs.microsoft.com/en-us/dotnet/api/system.reflection.assembly?view=netcore-2.0),用起来比较方便,但是网站页面不打开,数据是正常返回的,可能是预览版的问题(前面有提过),感兴趣需要页面的朋友可以 艾特 问我要。
看 data 数据返回:
先来看看前台效果图,只是简单的把输出显示出来,效果很丑,别笑哦~ 因为没时间找好看的模板~~~
再来看看后台效果图,主题选用: ace admin,列表显示用Bootstrap ,弹出层用Layer
项目的大体结构
lsyi. Web------------ web项目。
lsyi.Core ------------------框架的核心都封装在这。
lsyi.Data ----------------数据访问
lsyi. Autofac --------------------Autofac IOC容器
lsyi. Ninject ---------Ninject IOC容器
lsyi. Models --------------项目模型
lsyi. Services --------------服务
###############好了,下面给大家介绍框架封装的东西###################
首页
后台登录
后台首页
添加文章页面
由于时间原因,框架的介绍后面有空我再详细补上~~
项目地址 在这里https://github.com/lishuyiba/lsyiFramework
参考资料:
http://www.cnblogs.com/flyfish2012/p/3779810.html
http://docs.autofac.org/en/latest/integration/webapi.html
http://www.cnblogs.com/gamehiboy/p/5176618.html
https://docs.microsoft.com/en-us/ef/core/index
http://docs.autofac.org/en/latest/integration/webapi.html
基于AspNet Core2.0 开发框架,包含简单的个人博客Demo的更多相关文章
- 基于AspNet Core2.0(测试版) 开发框架,包含简单的个人博客Demo
大家好,最近离职了,利用闲暇时间就捣鼓了一个基于AspNet Core开发框架,分享出来希望能给AspNet Core学者带来一些帮助,同时也能跟大家一起学习.当然了,由于我的个人技术及经验的有限,框 ...
- Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架
Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...
- Centos7.2下Nginx配置SSL支持https访问(站点是基于.Net Core2.0开发的WebApi)
准备工作 1.基于nginx部署好的站点(本文站点是基于.Net Core2.0开发的WebApi,有兴趣的同学可以跳http://www.cnblogs.com/GreedyL/p/7422796. ...
- 前端基于react,后端基于.net core2.0的开发之路(1) 介绍
文章提纲目录 1.前端基于react,后端基于.net core2.0的开发之路(1) 介绍 2.前端基于react,后端基于.net core2.0的开发之路(2) 开发环境的配置,注意事项,后端数 ...
- 前端基于react,后端基于.net core2.0的开发之路(2) 开发环境的配置,注意事项,后端数据初始化
前端环境配置 项目介绍文章:前端基于react,后端基于.net core2.0的开发之路(1) 介绍 1.VSCode安装 下载地址:https://code.visualstudio.com/Do ...
- 基于Netbeans的安卓Android开发环境配置 - CSDN博客
原文:基于Netbeans的安卓Android开发环境配置 - CSDN博客 基于Netbeans的安卓Android开发环境配置 一.准备工作 NetBeans 勾选网页中的Accept-选择对应系 ...
- Python爬虫简单实现CSDN博客文章标题列表
Python爬虫简单实现CSDN博客文章标题列表 操作步骤: 分析接口,怎么获取数据? 模拟接口,尝试提取数据 封装接口函数,实现函数调用. 1.分析接口 打开Chrome浏览器,开启开发者工具(F1 ...
- 5.前端基于react,后端基于.net core2.0的开发之路(5) 配置node层,session设置、获取,请求拦截
1.总结一下 今年,2月份从深圳来到广州,工作到现在,回头看,完成的项目4-5个,公司基本没有懂技术的领导,所以在技术选型上,我们非常的自由,所以内心一直都不满足现状,加上一起工作的小伙伴给力(哈哈哈 ...
- gtk+3.0的环境配置及基于gtk+3.0的python简单样例
/********************************************************************* * Author : Samson * Date ...
随机推荐
- centos6.8安装httpd后无法访问
1.打开 httpd.conf 将里面的 #ServerName localhost:80 注释去掉 2.修改SELinux状态: 1)/usr/sbin/sestatus -v ##如果S ...
- 004_为什么不推荐APP使用SSL-PINNING
背景 之前工作的经历,前面技术团队的APP使用了SSL-PINNING,服务器SSL证书到期前,测试环境更换证书,在更换配置OK后,发现APP停止服务了.所有的请求全部都失败. 后来查到是APP使用了 ...
- 【原创】大数据基础之Hive(5)性能调优Performance Tuning
1 compress & mr hive默认的execution engine是mr hive> set hive.execution.engine;hive.execution.eng ...
- python字符串str和字节数组bytes相互转化
1 引言 后续待补充 2 代码 b = b"Hello, world!" # bytes s = "Hello, world!" # string print( ...
- [C]二级指针
二级指针即“指向指针的指针”: 下面的实例代码创建了一个二级指针c int a = 5; int* b = &a; int** c = &b; 你不能这样 int a = 5; int ...
- Django 中间件 请求前
中间件: class TestMiddleware(object): """中间件类""" def __init__(self): &quo ...
- WPF窗体的生命周期
和所有类一样,窗口也有生存期,在第一次实例化窗口时生存期开始,然后就可以显示.激活和停用窗口,直到最终关闭窗口. 1.显示窗体 构造函数 Show().ShowDialog()方法:Show()方法显 ...
- linux学习之软件包安装
本学习基于redhat系统或者centos系统 一.软件包的安装 1.rpm安装,rpm安装分为俩种,一种是直接安装xxx.rpm包,另一种是通过yum安装一系列的rpm包. #推荐使用yum安装,y ...
- swift 学习- 27 -- 访问控制
// 访问控制 可以限定其源文件 或模块中的代码对你的代码的访问级别, 这个特性可以让我们隐藏代码的一些实现细节, 并且可以为其他人可以访问和使用的代码提供接口 // 你可以明确地给某个类型 (类, ...
- python 排序 sort和sorted
当我们从数据库中获取一写数据后,一般对于列表的排序是经常会遇到的问题,今天总结一下python对于列表list排序的常用方法: 第一种:内建方法sort() 可以直接对列表进行排序 用法: list. ...