首先,我看的是Nop 3.80,最新版
百度资料很多,Nop用到的主要的技术有:
1、Mvc,最新版用的是 5.2.3.0
2、entity framework
3、autofac
4、插件化
5、(因为我是边看代码边写这个博客,怕忘记了一些东西,所以边看便记录,后面我看到感觉有好处的会添加到这里来)
1、mvc,不说了,百度一堆资料。如果不熟悉的同学可以参考 这里 这篇文章里面有一个很基础的mvc教程。非常不错。
2、entity framework,这个讲真,我以前不用,因为做的是电商类项目,然后之前的框架根本没用到这个。所以不是很理解它。对它的第一次接触,便是这个nop项目阅读,然后感觉不搞懂它就有些地方看不明白,所以花了点时间去学习entity framework,mvc的教程里面包含了entity framework。这里说明一下,nop用的是code-first,也就是代码创建数据库。
关于entity framework 的资料,可以参考一下 这里 (ps:这些是我在阅读nop源代码的时候,看的一些资料,还有挺多地址,我这里不一一贴出来,大家百度一下。博客园还是有很多好文章的。)
需要说明的是,如果你对entity framework 不是很感兴趣,那大致了解一下就可以。但是最基本的,怎么配置映射表名,怎么配置约束,怎么配置一对多 多对多等。最好了解一下。有助于后面说理解nop的代码。
3、autofac,这个依赖注入与控制反转的第三方库,具体用法可以看 这里 这个做作业有一个系列,还是很不错的。说明:一定要理解autofac的作用,因为nop的代码很多地方都是面向接口设计,如果不理解autofac的作用和写法,后面理解代码比较困难。我花了大概一天多的时间去各种百度各种测试。。。。。
4、插件化:讲真,还没仔细理解它的插件化结构,先不写,后面补上。不会影响阅读和理解nop的代码。我保证。
如果你跟着我上面说的,把那几个文章仔细认真看完了。现在你应该能能够搭建一个简单的,基于mvc+entity framework的增删改查的例子了。对的,你可以按照mvc例子上一模一样的例子写一个。只要理解就可以。先不要急着去看nop的代码,因为现在打开nop的代码,如果你不懂上面说的那几个,绝对是一脸蒙逼表情的。讲真,第一次打算看nop的源代码是一年多前,一个朋友给我推荐的,但是我下载完了看了一下,几乎不知道是怎么回事。放弃之。。。第二次另外一个朋友又推荐,才下决心要看。。。
so,如果你也感兴趣,跟着我的步伐,共同进步。
下一篇,会初识一下nop代码。了解它的结构和程序是怎么运行的。