ASP.NET ActionPack

了解Ruby On Rails的人大概都知道Rails提供了ActiveRecord和scaffolding,前者会根据数据库里的数据定义自动提供模型类的CRUD操作,后者则动态生成对应模型类的显示和修改数据的GUI,极大地提高了开发基于数据库的web应用的效率。

虽说Ruby On Rail目前在IT业风风火火,但在企业应用和普及方面,有所期待的地方还有不少。而且对于习惯静态类语言的开发人员来说,转到使用动态类语言Ruby也是个不小的跳跃。

Commerce Starter Kit 的作者Rob Connery在微软的开源网站上http://www.codeplex.com推出了一个开源项目ASP.NET ActionPack。

ASP.NET ActionPack
http://www.codeplex.com/Wiki/View.aspx?ProjectName=actionpack

这个项目把Rails的Convention Over Configuration设计原则应用到了ASP.NET,利用ASP.NET的Build Provider的设施,为你自动生成基于数据表的模型类编码,免除了你编写烦琐的数据访问编码的痛苦。

BLINQ相比,ASP.NET ActionPack是基于现有的ASP.NET技术,而不是需要等待的下一代技术,而且操作更方便,在改动数据库定义后,你不需要手工执行命令重新生成模型类。

他有个屏幕示范,
http://www.wekeroad.com/actionpackintro.html

在其中可以看到使用这个工具开发基于数据库的ASP.NET应用的过程。

大致这样,先要引用ActionPack程序集,在配置文件里添加连接字符串,ActionPack配置,和Build Provider设置,然后在App_Code里添加一个文本文件,指定需要生成的数据表的名字(用*表示所有的表),然后Build Provider就会自动生成跟这些数据表相关的类/集合以及非常灵活的CRUD操作,对数据库里的存储过程还会自动生成对应的类。这个工具还提供了一个查询类,允许你不用SQL字符串而是通过调用查询类的方法来设置查询条件,然后这个类在运行时生成SQL命令。

这个工具还提供了scaffolding功能!scaffolding是通过一个服务器控件实现的,只要指定一个表名,它就会自动生成对应的GUI,还能根据外键自动生成下拉框。。。。。

使用这个工具的话,很多编码都不用写了,看来更有时间花在web design上了.

 
Started GET "/notebooks/" for 127.0.0.1 at 2023-07-14 09:59:56 +0800 Processing by NotebooksController#index as HTML Completed 500 Internal Server Error in 1ms (ActiveRecord: 0.0ms) NoMethodError (undefined method `all' for Notebook:Module): app/controllers/notebooks_controller.rb:4:in `index' Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/actionpack-4.2.11.3/lib/action_dispatch/middleware/templates/rescues/_source.erb (2.2ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/actionpack-4.2.11.3/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (1.1ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/actionpack-4.2.11.3/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (0.5ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/actionpack-4.2.11.3/lib/action_dispatch/middleware/templates/rescues/diagnostics.html.erb within rescues/layout (9.8ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/web-console-2.3.0/lib/web_console/templates/_markup.html.erb (0.2ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/web-console-2.3.0/lib/web_console/templates/_inner_console_markup.html.erb within layouts/inlined_string (0.2ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/web-console-2.3.0/lib/web_console/templates/_prompt_box_markup.html.erb within layouts/inlined_string (0.2ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/web-console-2.3.0/lib/web_console/templates/style.css.erb within layouts/inlined_string (0.1ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/web-console-2.3.0/lib/web_console/templates/console.js.erb within layouts/javascript (8.4ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/web-console-2.3.0/lib/web_console/templates/main.js.erb within layouts/javascript (0.1ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/web-console-2.3.0/lib/web_console/templates/error_page.js.erb within layouts/javascript (0.2ms) Rendered /home/meiyi/.asdf/installs/ruby/2.6.9/lib/ruby/gems/2.6.0/gems/web-console-2.3.0/lib/web_console/templates/index.html.erb (15.1ms)
07-15
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值