Model(界面數(shù)據(jù)轉(zhuǎn)化為領域數(shù)據(jù))User.FirstName=txtFirstName.Text;User.LastName=txtLastName.Text;User.NickName=txtNickName." />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Bmrxntfj.UIMapper界面對象映射

系統(tǒng) 3157 0

Bmrxntfj.UIMapper 0.1
(UIMapper)界面/對象映射
主要是為了隔離界面,把重心放在領域模型上。在領域模型中,一切皆為對象。
比如O/RM,也是為了隔離關(guān)系數(shù)據(jù)到領域?qū)ο蟮霓D(zhuǎn)換。
一些不重復,但感覺重復的代碼,比如:
1、UI->Model(界面數(shù)據(jù)轉(zhuǎn)化為領域數(shù)據(jù))
User.FirstName=txtFirstName.Text;
User.LastName=txtLastName.Text;
User.NickName=txtNickName.Text;

2、Model->UI(領域數(shù)據(jù)轉(zhuǎn)化到界面)
txtFirstName.Text=User.FirstName;
txtLastName.Text=User.LastName;
txtNickName.Text=User.NickName;

但是可能還會有很多類似這樣的代碼。
Bmrxntfj.UIMapper 的目的就是為了解決這樣的問題。目前Bmrxntfj.UIMapper只支持簡單的功能,不能實踐應用。Bmrxntfj.UIMapper的目標是一個輔助的工具,只關(guān)心界面與模型之間的數(shù)據(jù)交接,不與數(shù)據(jù)庫產(chǎn)生聯(lián)系。
在開發(fā)之前,也有類似的成熟產(chǎn)品Wilson UIMapper(http://uimapper.net),可惜只能研究下free version。
另外園子里也有人寫過類似的東西,只不過也不成熟。
資料:
http://www.cnblogs.com/microsheen/archive/2005/06/06/168520.html
http://microsheen.cnblogs.com/archive/2005/08/28/224607.html

具體應用
領域?qū)嶓w

Code



界面代碼:
<asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
<asp:TextBox ID="txtLastName" runat="server"></asp:TextBox>
<asp:TextBox ID="txtNickName" runat="server"></asp:TextBox>
<br />
<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
<asp:TextBox ID="txtMemeberCount" runat="server"></asp:TextBox>

配置文件:
<?xml version="1.0"?>
<page>
? <object type="User">
??? <property type="System.String" name="FirstName" controlid="txtFirstName"></property>
??? <property type="System.String" name="LastName" controlid="txtLastName"></property>
??? <property type="System.String" name="NickName" controlid="txtNickName"></property>
??? <reference type="Dept" name="Dept">
????? <property type="System.String" name="Name" controlid="txtName"></property>
????? <property type="System.String" name="MemeberCount" controlid="txtMemeberCount"></property>
??? </reference>
? </object>
</page>

代碼:
Model->UI
Mapper mapper = new Mapper(Server.MapPath("map.xml"));
mapper.MappingUI(new User());

UI->Model
Mapper mapper = new Mapper(Server.MapPath("map.xml"));
object user=mapper.MappingObject(typeof(User));
源碼文件:
/Files/bmrxntfj/UIMapper.rar

Bmrxntfj.UIMapper界面對象映射


更多文章、技術(shù)交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 磐安县| 新安县| 侯马市| 杭州市| 句容市| 崇州市| 五原县| 中牟县| 仙游县| 舞阳县| 讷河市| 邹城市| 巴东县| 商城县| 云林县| 毕节市| 游戏| 宁阳县| 黔东| 邵阳市| 原平市| 巩义市| 宣威市| 河东区| 常州市| 连平县| 砚山县| 宜春市| 六枝特区| 静乐县| 新绛县| 余庆县| 大姚县| 舞阳县| 襄汾县| 潍坊市| 高雄县| 临朐县| 吴堡县| 吴江市| 越西县|