0%

现在的asp.net网站开发中用master模板还是比较多的,毕竟它跟原来的asp.net用法接近,学习成本很低,而且作为页面布局也够了。它最大的问题可能就是灵活性了,随着MVC的流行,razor模板大有取代master的趋势。razor提供了更灵活的写法,也使一般前端页面有更方便的调用后台代码的功能,大有超越code behind,回归asp时代的感觉,是微软网站开发技术的否定之否定。

razor页面的调用逻辑

在采用razor作为模板技术的网页中,默认的在View文件夹内有一个_ViewStart.cshtml文件(这个cshtml扩展名非常有意思,“c sharp html”可以使用c#编程语言的html文档,这个html绝对牛b),这个文件就是网页的默认模版,在这个网站的所有页面不用任何声明就是以该文件作为模版而创建的。顺便说一下,如果不希望用默认的模板怎么办呢?在页面上写上以下类似语句:Layout = "~/Views/Shared/_GreenLayout.cshtml"

模版是作为公共部分而存在的,那么特殊部分是如何引入的呢?

  • RenderBody

在_ViewStart.cshtml中有个@RenderBody(),这个代码的意思,该网页的主体部分就由这个语句引入,在模版页面里该代码只能使用一次,并且不用参数。但是一个模板只能有一个部分可以由外部引入,那太不灵活了,估计就没人会有兴趣用,master模板都比它强多了,所以@RenderSection就出来补充它了。

  • RenderSection

RenderSection是_ViewStart.cshtml模版中的占位符,哪里需要内容,就在哪里出现,跟RenderBody不同的是,它是需要参数的如@RenderSection("Menu")——在这个地方插入一个菜单,而且是必须的(默认是必须的),引用该模版的页面如果没有的话就会报错。当然如果不是必须的,那就应该这样写@RenderSection("Menu",false),意思就是说,你看着办吧。

  • RenderPage

RenderPage顾名思义是引入一个页面,使用的方式如@RenderPage(“~/Views/Shared/_Header.cshtml”),看起来没什么难度。

  • Html.Partial

三个看起来很像的Render兄弟之外,razor还提供了另一个引入其他页面的方法Html.Partial,如 @Html.Partial("_ExternalLoginsListPartial", new { Action = "ExternalLogin", ReturnUrl = ViewBag.ReturnUrl })这样的存在,看起来很高大上。

看完了这四个类似的方法确实解决了页面特殊部分的引入问题,但是这四者的区别在哪里呢?且听下回分解。

无意中发现一个网页幻灯片框架,根据他的介绍,比prezi还牛,因为prezi是基于flash的,而它是基于html的。

顾名思义,他是一个用html来实现幻灯片效果的东东,这类产品以前也接触过一些,还是蛮好玩的,但是他们的代价就是需要自己写代码,因而是Geek的玩物。不过这款产品有更加高端的特性——手势识别。kinect大家用过的,它的识别主要是通过多个摄像头得到3d数据来识别人体的活动的。REVEAL.JS牛逼的地方就在于他用普通电脑自带的摄像头,实现通过手势来实现幻灯片的上下左右的翻动。这里是它的地址,注意要用chrome浏览器。

下午要给学生讲网页程序的各种验证,顺便就把自己的机器弄了个花生壳解析出去。奇怪的事情就是用apache、ror、nodejs都可以解析出去,iis的网站却不能解析。而且我还用apache程序试了试80端口,没有问题,所以我丝毫不怀疑是防火墙的问题。实在没办法在防火墙里添加了一个规则,让80端口开放,iis网站居然ok了。

今天开始把www.wanglianghui.cn这个姓名域名用起来了,原来的wanglh.cn想想还是不要用算了。不过还有两年到期,到时候也做个转向到这个网站吧。

最近重装机器,系统里的东西也都七零八落,不过反正要从头开始就用一些最新的东西吧。

原来的octopress使用起来不是很方便,以前装机器的时候就想换其他的博客系统,如python下的好多系统都试过,包括这次的hexo,不过那时候的hexo确实不咋的,但是昨天看到后眼前一亮,就这货了。

安装node,安装git,然后安装hexo。不过在找主题的时候花了点时间,pacman太过小清新,我大叔不敢下手,freemind蛮酷的,不过不够现成,最后chenall了。刚好最近上课也要讲一些bootstrap,看它跟这个有关系,就载下来了。

不过chenall还是开了个玩笑,我差点废了他。他居然推荐了一个还没出来的hexo版本,最后还算有缘,无意中看到了说是直接下开发版,也太幽默了,版本号跟我原来安装的一样。为了这个主题还安装了minimist、lodash。最近为了rss安装了hexo-generator-feed。不过总算结束这几天的折腾,开始工作了。

今天开始使用Hexo!octopress虽然已经有更多的拥趸,不过it这行业永远总是后浪推前浪,新的永远值得尝试。

凌晨的时候发现,我的s230u进不了系统了。原因就是自带的系统安装iis屡次不成功,我有点想自己搞定这个机器的系统,但是对这个系统有没有特别有信心,因为首先win8的激活很麻烦,我的机子是在美国买的,万一安装的系统机子不认没办法激活,其次对固态硬盘+机械盘的方式安装系统其一些烦人的设置不清楚,说实在对这里的一系列技术名词一头雾水,什么uefi、irst、gpt、raid等。所以一直没有动这台机器,不过前面有一次系统盘空间太少的时候清理了一下,后来发现机器不能恢复了,大概我在操作的时候把一些隐藏分区给删掉了,而且也把win8在本机的一些安装文件也清理掉了。总之,今天凌晨的是我已经没有耐心再去折腾它了,虽然最近实际上也没什么空。

总之,在某次操作重启之后机器彻底歇菜了。当时我用了一起以前做的u盘启动盘也进不去,心慌意乱中就睡觉去了。

早上很早就起来,也上网查了很多资料,但是总感觉不得其法,于是决定送修。打了几个电话,问清楚金华的客户服务中心,就送过去了。那里的技术人员居然很不自信地说试试看,我一下子就有点火,这也太不敬业了,他们还要我把机器留下,我说那不如我自己拿回去折腾。后来来了个人,说他可以帮我搞下,但是要收钱,我说多少,今天能够弄好我愿意出。于是把机器放哪里就回来了。反正最近大概太累了,耳朵老是像塞了个棉花一样,感觉不舒服,我想休息一下算了。

下楼,发现车上被华丽丽滴贴条子了,处女贴。奇怪的是边上的车似乎都没问题啊,而且看时间刚贴的。想想算了,自己违停在线,先回家拿社保卡。到家老婆说先去校医院看看吧。我看看时间觉得去中心医院早上也结束了,就去校医院看。

医院那个鸟人大概正在不爽,爱理不理。我说我耳朵这个样子,你看看能不能配点药。他居然说,这个你要去大医院去检查一下,我不敢给你配药的,废话n多。马上走人。

老婆好不容易逮到机会说中午一起去吃饭,那就去啦。外婆家。吃饭前顺便挂了个号。

吃了饭去了医院,那时候早上的那个技术人员打电话来了,他们搞不定,让我回去拿机器吧。刚好医院下午开门,我是第二个。大概是擅长看鼻子的,一看我的症状说你这个应该是鼻子引起的耳朵问题,先做个鼻镜。鼻镜做出来没什么问题,然后就给我开了点药。

从医院出来去拿机器,拿回家自己继续搞,结果很快就有思路,机器搞定了。这大概是全天的唯一亮点。

现在再来回顾这一天吧,虽然不爽还是要面对。首先是电脑坏了,找专门的维修公司居然还没搞定,还拿了张罚单回来;其次,去看病,被庸医害,学校的那个牢骚多,后面的那个医生也是有问题,做鼻镜那就算了,关键是开的药不靠谱,从鼻镜明显可以看到没什么炎症,还开了很重的消炎药。回来后查了一下两种药副作用都有点强,于是这药的100多块钱又浪费了。

今天一天的遭遇我只能说现在的专业技术人员真的不靠谱。