当前位置:编程学习 > C#/ASP.NET >>

mvc3.0问题

mvc里的view层文件后缀名是.cshtml,请问能不能用.html结尾的静态页面代替.cshtml文件,听别人说设置路由就行了,但是我不知道怎么设置. MVC --------------------编程问答-------------------- 设置路由说的是在浏览器呈现的URL,.cshtml很清楚地说明这是一个模版页面,而不是最终的html页面。

不用担心,最终用户看不到这些cshtml文件,也看不到它的后缀。所以不需要修改。 --------------------编程问答--------------------
引用 1 楼 caozhy 的回复:
设置路由说的是在浏览器呈现的URL,.cshtml很清楚地说明这是一个模版页面,而不是最终的html页面。

不用担心,最终用户看不到这些cshtml文件,也看不到它的后缀。所以不需要修改。


问题是现在公司开发要求view层的全部是.html结尾的文件,如果是.cshtml结尾的文件在百度搜索不到.
--------------------编程问答--------------------
引用 2 楼 qq123592624 的回复:
Quote: 引用 1 楼 caozhy 的回复:

设置路由说的是在浏览器呈现的URL,.cshtml很清楚地说明这是一个模版页面,而不是最终的html页面。

不用担心,最终用户看不到这些cshtml文件,也看不到它的后缀。所以不需要修改。


问题是现在公司开发要求view层的全部是.html结尾的文件,如果是.cshtml结尾的文件在百度搜索不到.


你干嘛让百度收录你的源代码。多么奇怪的需求。 --------------------编程问答--------------------
引用 2 楼 qq123592624 的回复:
Quote: 引用 1 楼 caozhy 的回复:

设置路由说的是在浏览器呈现的URL,.cshtml很清楚地说明这是一个模版页面,而不是最终的html页面。

不用担心,最终用户看不到这些cshtml文件,也看不到它的后缀。所以不需要修改。


问题是现在公司开发要求view层的全部是.html结尾的文件,如果是.cshtml结尾的文件在百度搜索不到.


难道你的“公司”就没有哪怕一个明白人么。.cshtml是你的服务器端源代码,根本就不应该让用户访问到,更不应该让搜索引擎收录。 --------------------编程问答--------------------
引用 4 楼 caozhy 的回复:
Quote: 引用 2 楼 qq123592624 的回复:

Quote: 引用 1 楼 caozhy 的回复:

设置路由说的是在浏览器呈现的URL,.cshtml很清楚地说明这是一个模版页面,而不是最终的html页面。

不用担心,最终用户看不到这些cshtml文件,也看不到它的后缀。所以不需要修改。


问题是现在公司开发要求view层的全部是.html结尾的文件,如果是.cshtml结尾的文件在百度搜索不到.


难道你的“公司”就没有哪怕一个明白人么。.cshtml是你的服务器端源代码,根本就不应该让用户访问到,更不应该让搜索引擎收录。


不知道是不是我没说明白,我想要的功能就像这个人问的http://bbs.csdn.net/topics/330139462 --------------------编程问答-------------------- 第一楼主的表述是有问题的,第二你公司要求完全以.html结尾是没道理的,没必要这么搞。
不过你硬要弄成.html访问,修改路由如:
routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}.html", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );

若要保留原始路由,请新增该路由并提之默认路由前面。 --------------------编程问答-------------------- 其实你们公司是想要看到所有页面是html结尾的,你这个可以通过urlrewrite组件来进行url重写的,这个和百度收录是没多大关系的了 --------------------编程问答-------------------- 这和路由有什么关系?Razor视图就是cshtml文件。干什么要换成html文件?cshtml文件还可以套c#代码的,html可以? --------------------编程问答--------------------
引用 2 楼 qq123592624 的回复:
Quote: 引用 1 楼 caozhy 的回复:

设置路由说的是在浏览器呈现的URL,.cshtml很清楚地说明这是一个模版页面,而不是最终的html页面。

不用担心,最终用户看不到这些cshtml文件,也看不到它的后缀。所以不需要修改。


问题是现在公司开发要求view层的全部是.html结尾的文件,如果是.cshtml结尾的文件在百度搜索不到.

用html那你干嘛还用mvc --------------------编程问答--------------------
引用 6 楼 fangxuan 的回复:
第一楼主的表述是有问题的,第二你公司要求完全以.html结尾是没道理的,没必要这么搞。
不过你硬要弄成.html访问,修改路由如:
routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}.html", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );

若要保留原始路由,请新增该路由并提之默认路由前面。
6楼的这位正解,楼主要的只是url中看到的是html形式的就只要这样配置路由就行了 --------------------编程问答--------------------
引用 8 楼 luoyiaibaobao 的回复:
这和路由有什么关系?Razor视图就是cshtml文件。干什么要换成html文件?cshtml文件还可以套c#代码的,html可以?
你这种说法是错误的理解,cshtml只是一个名称而已,只是用来呈现html代码的,都是通过c#代码和模板引擎来解释这些代码从而生成html的 --------------------编程问答-------------------- MVC3或者MVC4生成的页面全部都是以.CSHTML结尾的
你不需要管他啊 假如你配置你路径的话就在你项目中的Global.asax配置文见配置一下就好了
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,