搜索

首页  >  问答  >  正文

提个蛋疼的问题:谁弄过ASP的MVC?如何让这个操蛋的语言在菊开二度?

asp很神奇的支持两种语法:JScript 跟VBScript
我没见过谁弄过ASP的MVC哈哈,估计实现的人一定很蛋疼:
我的想法是:
统一入口点
分析模块跟动作
然后用正则跟FileSystemObject去处理模块跟动作asp文件生成到runtime目录下,
然后每次就调用这些runtime下的文件了.
当然得自己实现 什么import require include等东西了
别问我这个问题蛋疼不蛋疼 我只知道我很蛋疼 哈哈
当然用asp的一般都是小型系统 比如说cms什么的别指望能大型 所以我这是在小型的条件下的

仅有的幸福仅有的幸福2787 天前618

全部回复(2)我来回复

  • 给我你的怀抱

    给我你的怀抱2017-05-16 17:08:51

    其实不见得非要统一入口点嘛,让asp去分析url……若url规则比较多的话效率是不是也忒低了点儿……若不在意url的话用get的方式获取action也行。

    其实mvc的目的是为了分层分工,若能完成此目的便是ok。

    假如有一个url为/articles.asp的脚本,对应的文件是D:projectwebarticles.asp,那么此文件可以看成是controller,若有可获取数据得model文件D:projectmodelarticles.asp,并且此文件定义有若干获取articles数据的方法,以及view文件D:projectviewarticles.asp,controller就可以这么写:

    <!--#include file="..\model\articles.asp"-->
    set articles = getArticleList();
    <!--#include file="..\view\articles.asp"-->

    其实其他语言也一样,要想实现mvc不见的单一入口框架是必须的。若要重点考虑性能,让webserver来决定controller比让解释器来决定效率高得多。

    回复
    0
  • 高洛峰

    高洛峰2017-05-16 17:08:51

    您测试过吗,我2005年想过这样做(单一入口),不过经测试ASP 3.0不支持动态include。类似这样的写法是不能生效的,include不会理会前面的if/else:

    if (条件a)
    include a.asp
    else if (条件b)
    include b.asp

    不知道过隔6年半,是不是新版本的ASP支持这个特性了

    回复
    0
  • 取消回复