ASP.NET MVC 3.0 发布了!
时间:2011年01月17日作者:Winson查看次数:查阅:702评论次数:7
最近一直在关注PHP方面的东西,对于.NET的反而都比较少关注了,呵呵!前几天ASP.NET MVC3.0已发布了,之前就在 Scott Guthrie 的博客里看到他对3.0版新的模板语言(Razor)的介绍,当时看到后就觉得这个模板引擎确实不错,要实现view模板太方便了,而且还有代码高亮和智能提示哦,呵呵,现在终于可以用上了!
最近一直在关注PHP方面的东西,对于.NET的反而都比较少关注了,呵呵!前几天ASP.NET MVC3.0已发布了,之前就在 Scott Guthrie 的博客里看到他对3.0版新的模板语言(Razor)的介绍,当时看到后就觉得这个模板引擎确实不错,要实现view模板太方便了,而且还有代码高亮和智能提示哦,呵呵,现在终于可以用上了!
大家都知道,要在.Net下实现国际化是很简单的事,只需添加一个 App_GlobalResources 目录和相应的资源文件(.resx),然后就可以直接调用了,如现有一资源文件名为: Admin.resx,其中有一个叫 Title 的键值,这时在页面只需直接使用
1 string title = Resources.Admin.Title;
但如果想在JS里也使用此资源文件,要如何处理呢?其实也很简单,只需使用AJAX调用后台获取资源文件即可,以下就使用jQuery + ASP.NET MVC为例实现在JS下直接调用资源文件的方法(当然你也可以直接使用传统的JS AJAX方法获取)
继续阅读:Javascript下调用.Net资源文件,实现语言国际化»
在MVC 2.0里支持强类型实体绑定,可以直接使用如
1 <%: Html.TextBoxFor(model => model.Description, new { @class="text"})%>
来自动将实体绑定到表单里,但我不知道如何使用 Html.RadioButtonFor 来生成 RadioButton ? 在使用 Html.RadioButtonFor 必须至少2个参数,另一个是指一个object,我绑定的字段是一个bool型的,如何能自动生成相关的RadioButton 呢?
开始时一直觉得一句话就可以完成,弄了半天也没成功,后来想起了其实调用一次 Html.RadioButtonFor 就只生成一个 RadioButton,那又怎么可能一句就生成2个button呢?呵,傻了吧,唉,其实只要分别调用2次就可以了啊,然后再加上个 if 判断一下当前值即可,以下是实现的代码:
1
2
3
4
5
6
7
8
9
10
11 <%if(Model.OffStatus){ %>
<%: Html.RadioButtonFor(model => model.OffStatus, true, new { @id = "radio1", @name = "Status", @checked="checked" })%>
<label for="radio1">开启</label>
<%: Html.RadioButtonFor(model => model.OffStatus, false, new { @id = "radio2", @name = "Status" })%>
<label for="radio2">关闭</label>
<%}else { %>
<%: Html.RadioButtonFor(model => model.OffStatus, true, new { @id = "radio1", @name = "Status" })%>
<label for="radio1">开启</label>
<%: Html.RadioButtonFor(model => model.OffStatus, false, new { @id = "radio2", @name = "Status", @checked = "checked" })%>
<label for="radio2">关闭</label>
<%} %>
就这么简单…….
内容简介:
在 Web 开发方面的杰出者 Dino Esposito 通过巧妙的方式让你深入地了解 ASP.NET MVC 框架。ASP.NET MVC 强制开发者必须要有清淅的组件模型,视图,控制器等应用组合,使人们更易于管理应用的复杂性。投身到框架的内部机制,了解每个 ASP.NET MVC 模块背后其实际的应用原理。你将会了解到如何以及何时使用此编程模型替代传统的 Web Forms 的全部 HTML 控件,简化测试和可扩展性,和设计更好的网站和经验。一如既往地,Esposito 将提供详细、精辟的指导和说明代码示例,让你可以提高生产速度。
继续阅读:【好书推荐】Programming Microsoft ASP.NET MVC»
这段时间一直在研究ASP.NET MVC,正准备用其来做一个淘客网,呵呵
由于网站需要用到换肤技术,所以准备将所有模板和资源文件都放到Views目录里,这样管理起来也比较方便,但没想到原来在Views里是禁止了一切资源的访问的,我想这样设计可能是防止被人直接访问view所造成不便吧,不过对于现在我的需求来说,只有2种解决办法了:
1、将所有模板和资源文件放到另一个新建的目录里,如建一个 skins,但这样做就会失去了在Views下的一些MVC脚手架的功能(如直接添加view或者与controller之间直接跳转等)
2、想办法修改配置,让在Views目录里也可以直接访问资源文件
本来也想了要么在独立的content目录里再分类存放各个skin的资源文件,但觉得这样做比较麻烦,建立一个skin还要分别放到不同的地方,不好管理,所以只好想办法实现第2种方式了。
其实要解决Views里的限制也很简单,只需修改Views目录里的web.config文件即可
在web.config里有这样一段配置
1
2
3 <httpHandlers>
<add path="*" verb="*" type="System.Web.HttpNotFoundHandler" />
</httpHandlers>
就是这里,限制了所有资源的访问,直接使用了HttpNotFoundHandler来处理了,因此我们只需指定限制特定的文件,不要全部禁止就可以了:
1
2
3
4
5 <httpHandlers>
<add path="*.html" verb="*" type="System.Web.HttpNotFoundHandler" />
<add path="*.ascx" verb="*" type="System.Web.HttpNotFoundHandler" />
<add path="*.aspx" verb="*" type="System.Web.HttpNotFoundHandler" />
</httpHandlers>
以上就只限制了3种文件的访问,因为考虑到一般模板文件用到的也是这几种啦,当然你可以根据需要自行添加,经过修改后,就可以直接在Views目录里使用所有资源文件了
最新评论
忙點好啊,才能鍛煉人呢,去年我是 »
Post:2012-01-30 11:13:41app开发的就是专业的。。。
Post:2012-01-29 14:52:54新年快乐:happy:
Post:2012-01-23 17:40:41板凳 快乐。
Post:2012-01-22 08:10:23沙发。。哈。新年快乐。
Post:2012-01-22 08:10:04却是没有搞过JS。但是我看下新效果 »
Post:2012-01-21 10:02:53你好博主。我看了这篇文章非常感兴 »
Post:2012-01-20 22:27:13这就是SEO的缺点。还是要拥有固定的访客
Post:2012-01-18 10:15:46