随笔-39  评论-277  文章-0  trackbacks-1

这是一个对象界面映射的框架,它能做的事情是:建立对象和界面的映射,能够把界面的内容在界面显示,同时也能把界面的内容更新到对象中。

写的原因:
看了NHibernate的框架,觉得写得真的很好,很想自己也写一个程序,这时想到现在的多层开发中,其中一个难点在于层与层之间的映射问题,NHibernate等ORM解决了数据库和对象之间的映射,那么对象和界面的映射应该也是可以写一个的。我想它应该保持独立性。这表现在:
1)它和数据库没有任何关系,但可以和所有ORM配合使用。
2)界面的控件你可以自由来选择,界面控件如何和对象映射,你可以来自由控制。
3)控件的其他特性,比如大小、颜色等,可以交给其自身(比如:html或aspx等),或者有其他框架来负责。它应该专注于对象和界面的映射。

解决的问题:
1)对象-->界面,界面-->对象的代码往往是重复的两段代码。
2)处理int、decimal、datetime等值类型时。如果在数据库中为null的,则要使其在界面正常显示(或从界面取回数据)需要写一些重复代码。
3)此外对于DropdownListBox等有些控件赋值时,如果赋予的值不在范围内,会报错。这使得程序要写一些重复的判断语句。

1.0.0.0版本说明:
1)支持把对象的一个属性映射到界面控件的一个属性。
2)支持把集合对象中的一项映射到界面控件的一个属性。比如:一个Hashtable中一个key=abc的子项映射到控件的一个属性。
3)支持把对象内容分解成多项内容,然后映射到界面中去。比如:一个属性的值是"ID=1;Name1=
张三",可以把其分解成ID,Name两个属性并映射到界面控件上。
4)和现在已有的一些UI映射不同,对于界面中控件的位置、大小、颜色等,本框架并不处理。
5)仅支持BS版本,不支持CS。
6)不支持Datagrid等集合控件。
7)自定义界面和对象的绑定规则

源码和例子下载: Mustang 1.0.0.0

posted on 2005-08-28 14:42 microsheen 阅读(2350) 评论(15)  编辑 收藏 所属分类: .net故事

评论:
#1楼 [楼主] 2005-08-28 14:46 | microsheen      
大家有任何意见问题,可以给我发邮件xj229@sina.com!
  回复  引用  查看    
#2楼  2005-08-28 14:57 | wanghualiang      
建议改个名字,mustang野马,上网查的话普天盖地的福特车,很难从Google中找到这条信息。
  回复  引用  查看    
#3楼  2005-08-28 15:35 | HelloSnoopy      
我也写过这么个东东,从表单生成、数据库映射、GRUD方法实现、动态DataGrid列表。。全通过XML。支持任意控件的绑定,只要你有这个DLL就行。
  回复  引用  查看    
#4楼  2005-08-28 16:09 | clamphammer [未注册用户]
恩,建议改名,跟java的下个版本名字冲突了
  回复  引用    
#5楼 [楼主] 2005-08-28 16:13 | microsheen      
其实我的这个程序,功能没有那么多。仅仅是可以把对象映射到界面上去,消除一部分重复的代码。它并不包括数据库方面的映射,新增、修改、删除这些操作也不支持。
其实我想做的是把对象的内容显示在界面上,而不管这个对象从何而来的。
  回复  引用  查看    
#6楼  2005-08-29 08:58 | neuhawk [未注册用户]
我也写过这么个东东,从表单生成、数据库映射、GRUD方法实现、动态DataGrid列表。。全通过XML。支持任意控件的绑定,只要你有这个DLL就行。
~~~~~~~~~~~~~~~~~~~~~
跟我做的差不多哦,我现在加入ajax,很爽,
  回复  引用    
#7楼  2005-08-29 09:23 | Teddy's Knowledge Base      
我本来也想写的,不过在看到asp.net2.0提供的那么好的xmldatasource之后,我觉得,就没太大意义了。2.0里的xmldatasource真是太强了,“从表单生成、数据库映射、GRUD方法实现”都提供了,稳定性也有保障。从产品的市场角度来讲,要写这类mapping library的话尽量别和他的功能有太大的重复和冲突。
  回复  引用  查看    
#8楼  2005-08-29 10:56 | 飞不动了 [未注册用户]
如果能够跟据对象映谢,自己动生成界面,并且界面控件的位置可以手动调整
这样就比较实用和完美了
  回复  引用    
#9楼 [楼主] 2005-08-29 12:52 | microsheen      
其实我们有这样的程序,只是不是很通用。想找一个代码生成工具,但不知道哪个比较好!
  回复  引用  查看    
#10楼  2005-08-29 14:32 | 蛙蛙池塘      
路过

  回复  引用  查看    
#11楼  2005-08-30 07:44 | 难得一蠢      
现在的代码生成之类东西,很多公司内部都有一套..再开发类似的东西很难有创新了.功能基本上也已经定型了..
  回复  引用  查看    
#12楼  2005-08-30 16:59 | pdh [未注册用户]
支持开源
  回复  引用    
#13楼  2005-09-26 15:15 | yjcmy [未注册用户]
很想看看你的Mustang 1.0.0.0
是怎么实现的,但链接打不开,可以把Mustang 1.0.0.0
和Koala1.0.0.0的代码和例子一起发给我吗?谢谢
candycmy@e172.com
  回复  引用    
#14楼 [楼主] 2005-09-26 23:23 | microsheen      
已经发给你了,请查收并批评指正。我的msn:xj229@hotmail.com
  回复  引用  查看    
#15楼 [楼主] 2005-09-26 23:24 | microsheen      
网页也可以下了,原来就可以,不知道为何最近为何又不可以了?
  回复  引用  查看    

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2005-12-11 23:56 编辑过


相关链接: