Redian新闻
>
如何让Razor view engine可以渲染htm/html文件
avatar
W*n
2
最近遇到一个有意思的问题:如何让razor view engine可以渲染.htm 或者.html的文
件。razor有一个强制的文件后缀检查,要求文件必须是.cshtml,.vbhtml,aspx。今天
用了一个很怪的workaround搞定了。。就是弄了一个virtual path provider,当razor
请求特定virtual目录下的文件时,让razor以为在访问.cshtml,现在work的还不错,
但是感觉很怪很怪。。不知道有没有别的方法来解决?
stackoverflow上说可以添加buildprovider,但我怎么试也不好用。
avatar
c*o
3
i remember easytune played lots of such songs.
i dont really like most of them in fact...
which ones do u like?
avatar
k*n
4
为什么要这样?
你明明不是纯html格式啊。
avatar
l*i
5
什么曲子算奥运曲子啊 呵呵。
今年的会歌还没有找到好的版本。

【在 k****f 的大作中提到】
: 比如会歌之类的
avatar
s*o
6
not sure why you want .html files, which contain static content, to go
through view engine. If you just want to keep cleaner URL, using something
like Response.WriteFile, Server.Transfer, etc in an action method may be an
easier hack.
avatar
W*n
7
是这样。。。business用户希望可以自己更改layout page并且上传,他们不想所有的
UI改动都要通过dev team。business用户当然不会使用什么razor/cshtml,只会上传.
htm的文件。上传以后的layout文件还要通过razor来包含我的view/partial view等等。
上传的Layout文件,我尽量不想去rename,因为以后会有一个后台程序可以管理这些
layout,在线更改,下载之类的。。

【在 k**n 的大作中提到】
: 为什么要这样?
: 你明明不是纯html格式啊。

avatar
W*n
8
既然mvc里请求动态内容全是controller来处理,没有传统页面的概念,那razor又何须
检查文件后缀呢?如果只是为了intellisense,可以通过别的方式实现吧。。例如那个
views目录下的web.config。
这样的话,razor完全可以变成一个更通用的template engine。

an

【在 s***o 的大作中提到】
: not sure why you want .html files, which contain static content, to go
: through view engine. If you just want to keep cleaner URL, using something
: like Response.WriteFile, Server.Transfer, etc in an action method may be an
: easier hack.

avatar
c*t
9
你们需要的是一个CMS,DotnetNuke,SiteCore都能满足你们的要求

等。

【在 W********n 的大作中提到】
: 是这样。。。business用户希望可以自己更改layout page并且上传,他们不想所有的
: UI改动都要通过dev team。business用户当然不会使用什么razor/cshtml,只会上传.
: htm的文件。上传以后的layout文件还要通过razor来包含我的view/partial view等等。
: 上传的Layout文件,我尽量不想去rename,因为以后会有一个后台程序可以管理这些
: layout,在线更改,下载之类的。。

avatar
s*o
10
Multiple view engines can co-exist. File extensions are used to determine
which view engine to pick up - Razor for .cshtml, WebForms for .aspx, Spark
for .spark, etc.
For .html files, IIS is supposed to deliver its content directly. But in
your case, I guess there are some Razor specific syntax in those .html files
, such as @RenderBody...One idea is to write and register your own view
engine. Ideally you can extend Razor by just overriding whatever are related
.
If I remember correctly, Steve Sanderson has a sample in his MVC book for
handling .xml files.

【在 W********n 的大作中提到】
: 既然mvc里请求动态内容全是controller来处理,没有传统页面的概念,那razor又何须
: 检查文件后缀呢?如果只是为了intellisense,可以通过别的方式实现吧。。例如那个
: views目录下的web.config。
: 这样的话,razor完全可以变成一个更通用的template engine。
:
: an

avatar
k*n
11
以前mvc2时,webform与mvc混用的话,aspx必须放在content里,与纯html与css等在一
起。。mvc3还不知道咋处理的。
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。