用Taurus.MVC 做个企业站(上)
前言:
之前是打算写一篇文章叫:Taurus.MVC 从入门到精通,一篇完事篇!
后来转指一念,还是把教程集在这个企业站项目上吧!!!
企业站风格:
之前发过一个帮师妹写的企业站:最近花了几个夜晚帮师妹整了一个企业网站
技术风格是:文本数据库(txt)+WebForm
转型的风格:文本数据库(txt)+Taurus.MVC
今天要完成的界面主要是首页:

OK,下面开始,看看一步一步怎么从无到有的做这个企业项目:
1:新建ASP.NET空的Web应用程序项目:

2:添加一个类库项目,叫Taurus.Controllers

3:在Taurus.Controllers项目上用Nuget引用Taurus.MVC:

当然,你也可以用源码项目,或者找到源码里的两个DLL添加引用:

注意EnterPriseSite项目需要引用Taurus.Controllers项目,毕竟编绎后的DLL要集中在EnterPriseSite项目上的。
4:在EnterPriseSite项目上添加Views文件夹,和几个空页面:
default.html等页面没放到default文件夹,是不对的,后面的截图会修正。

5:从原WebForm项目里把Style、App_Data目录下的文本数据库Copy过来:
顺便把项目名称改成EnterPriseSite.View

6:把原项目的用户控件的html标签Copy过来,放到Shared目录下master.html里:


用Taurus.MVC的时候,就木有Repeater的概念了,只有Html和JS。
有业务条件代码的,可以用JS处理,也可以后台处理,这里先用Js处理(后面有演示后台处理的):

模板页的节点可以随便放的,只要节点有名称(id或name),就可以被其它html引用。
引用的属性名称可以是id,name或者个别tag如(head,body,title,script,style,form,meta,link)
所以你能用master.head,master,body,master.title,master.script(都只取第一个节点)...
7:从原来的界面复制Default页面的标签过来:
原来的Default.aspx:

现在Default.html

界面都搞完了,现在开始要写代码了:
8:新建DefaultController.cs,同时把CodeFirst的几个表类Copy过来:
弄了个Logic文件夹来放,项目简单的时候,就不想建太多工程,用文件夹了:

然后,写几个方法上去,这样才能加载到对应的html文件:

所以html都是放在/views/default/目录下的。
补充说明:
默认访问路径是:localhost/default/index、locahost/default/artilelist...
为了把default去掉,默认的路由我补充了一个;以前路由模式只有1和2,现在多了个0。
9:看看Web.Config配置:

10:写逻辑代码绑定页面:
由于项目简单,我把业务逻辑,直接建了一个类,扔Controller里面了,叫DefaultLogic。
为了分层清晰,同学们还是自己新建一个Taurus.Logic类库项目放。
逻辑类需要继承自Taurus.Core.LogicBase,这样才能传递View对象到逻辑类中,注意有构造函数哦。

由于html的节点id按约定:表名View,所以Bind(View)就可以了,不需要指定名称。

这里多了一个事件View.Onforeach,用来格式化界面呈现的时间的:

当然后台不先格式好化,那就前台去处理了,就像上面的截图中有一个是用JS处理的代码。
11:Controller调用逻辑代码,渲染页面:

最后,一个漂亮的首页就出来了:

打完收工:
后续几个页面,包括文章列表,文章详情、产品中心,还有后台管理,下篇再介绍。
以前都是整个项目做完再写文章的,现在项目写一半,文章补一篇,哈。。。
已完成的部分源码:http://code.taobao.org/svn/cyqopen/trunk/Taurus.MVC.GettingStarted
感谢大伙支持!!!
用Taurus.MVC 做个企业站(上)的更多相关文章
- 用Taurus.MVC 做个企业站(下)
前言: 上一篇完成了首页,这一篇就把剩下的几个功能给作了吧. 包括文章列表.文章详情和产品展示. 1:文章列表: 原来的ArticleList.aspx 1:现在的articlelist.html 除 ...
- 企业站如何做长尾关键词seo优化
http://www.wocaoseo.com/thread-315-1-1.html 很多企业站,优化到一定程度后网站的流量很快就上去了,但是之后网站就无法更进一步.那么对于普通中小型企业站 ...
- 企业站做seo用什么程序好
http://www.wocaoseo.com/thread-306-1-1.html 随着互联网的兴起,越来越多的人通过网络来了解自已想了解的资讯,网络营销已经慢慢的取代了传统的营销模式.很多企业现 ...
- Taurus.MVC 微服务框架 入门开发教程:项目部署:4、微服务应用程序发布到Docker部署(上)。
系列目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 开源地址:https://github.com/cyq1162/Taurus.MVC 本系列第一篇:Tauru ...
- 开源:Taurus.MVC 框架
为什么要创造Taurus.MVC: 记得被上一家公司忽悠去负责公司电商平台的时候,情况是这样的: 项目原版是外包给第三方的,使用:WebForm+NHibernate,代码不堪入目,Bug无限,经常点 ...
- Taurus.MVC
开源:Taurus.MVC 框架 为什么要创造Taurus.MVC: 记得被上一家公司忽悠去负责公司电商平台的时候,情况是这样的: 项目原版是外包给第三方的,使用:WebForm+NHibernate ...
- 开源:Taurus.MVC 框架 (已支持.NET Core)
为什么要创造Taurus.MVC: 记得被上一家公司忽悠去负责公司电商平台的时候,情况是这样的: 项目原版是外包给第三方的,使用:WebForm+NHibernate,代码不堪入目,Bug无限,经常点 ...
- Taurus.MVC 2.0 开源发布:WebAPI开发教程
背景: 有用户反映,Tausus.MVC 能写WebAPI么? 能! 教程呢? 嗯,木有! 好吧,刚好2.0出来,就带上WEBAPI教程了! 开源地址: https://github.com/cyq1 ...
- PHPCMS企业站制作
安装 将下载好的文件放到www目录下 地址栏中输入 http://localhost:8080/phpcms/install_package/install 打开安装页面 进行安装即可. 如果出现: ...
随机推荐
- Virtual Box配置CentOS7网络(图文教程)
之前很多次安装CentOS7虚拟机,每次配置网络在网上找教程,今天总结一下,全图文配置,方便以后查看. Virtual Box可选的网络接入方式包括: NAT 网络地址转换模式(NAT,Network ...
- 【流量劫持】躲避 HSTS 的 HTTPS 劫持
前言 HSTS 的出现,对 HTTPS 劫持带来莫大的挑战. 不过,HSTS 也不是万能的,它只能解决 SSLStrip 这类劫持方式.但仔细想想,SSLStrip 这种算劫持吗? 劫持 vs 钓鱼 ...
- Linux中进行单文件内容的复制
文件内容复制的常规方法: 开辟一段空间,不断读取文件的内容并写入另一文件当中,这种方法好在安全,一般在类型允许的最大范围内是安全的,缺点就是复制内容的时间长 一次性复制文件的内容,这种方法必须首先获取 ...
- 解决cookie跨域访问
一.前言 随着项目模块越来越多,很多模块现在都是独立部署.模块之间的交流有时可能会通过cookie来完成.比如说门户和应用,分别部署在不同的机器或者web容器中,假如用户登陆之后会在浏览器客户端写入c ...
- Android注解使用之通过annotationProcessor注解生成代码实现自己的ButterKnife框架
前言: Annotation注解在Android的开发中的使用越来越普遍,例如EventBus.ButterKnife.Dagger2等,之前使用注解的时候需要利用反射机制势必影响到运行效率及性能,直 ...
- redis集成到Springmvc中及使用实例
redis是现在主流的缓存工具了,因为使用简单.高效且对服务器要求较小,用于大数据量下的缓存 spring也提供了对redis的支持: org.springframework.data.redis.c ...
- Spark踩坑记——初试
[TOC] Spark简介 整体认识 Apache Spark是一个围绕速度.易用性和复杂分析构建的大数据处理框架.最初在2009年由加州大学伯克利分校的AMPLab开发,并于2010年成为Apach ...
- (一)开篇—杂谈WebGIS
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.前言 我相信大家对百度地图,谷歌地图等相关应用已经是非常熟悉了.通过 ...
- R abalone data set
#鲍鱼数据集aburl <- 'http://archive.ics.uci.edu/ml/machine-learning-databases/abalone/abalone.data' ab ...
- JavaScript学习笔记(一)——延迟对象、跨域、模板引擎、弹出层、AJAX示例
一.AJAX示例 AJAX全称为“Asynchronous JavaScript And XML”(异步JavaScript和XML) 是指一种创建交互式网页应用的开发技术.改善用户体验,实现无刷新效 ...