还贷的人是谁? 管他是父亲还是儿子,把钱还回来就行

本篇从案例开始,为了更好理解接口以及C#的知识,本篇抛开客户端jQuery或是Javascript知识,也就是说ASP.NET与C#一起讨论。

进入之前,你可以先细读msdn文章《Cross-Page Posting in ASP.NET Web Pageshttp://msdn.microsoft.com/en-us/library/ms178139(v=vs.110).aspx 或者论坛上一篇问题

为什么我这个跨网页传递一直报错!未将对象实例化??http://bbs.csdn.net/topics/390937410 。这两篇均可以归为同一类知识。但是它们有一个共同的地方,就是在目标页中,去指定前一页控件名称,红色箭头指向高亮位置:

这里就是这次我们讨论的重点,也就是说你不能把它写死了。比如说,你(借方)有很多钱,借给了很多人(贷方),多少人不确定,现在你提醒或是他们要还你钱。因此借方不能只使用TextBox1去代表所有贷方。
贷方有可能是TextBox2,DropDownList3,RadioButtonList2,......等等

这样你得在上面MSDN代码示例中要写上很多代码,如:

现在,我们要怎样解决这个问题,我们怎样知道还钱的人是谁。

为了解这个问题,下面 Insus.NET创建一个asp.net站点,也顺便创建好几个网页,去代表借(debit)贷(credit)。

下面这个演示站点程序大概如下,首先是借方Debit.aspx:

Debit.aspx.cs:

下面是贷方Credit,Insus.NET在演示中,列举了四个,实际环境中,也许会有少有多。先是Credit1.aspx:

由于Creditn.aspx.cs没有写任何代码,因此就不帖出来了。
Credit2.aspx:

Credit3.aspx:

Credit4.aspx:

分别演示一下,程序是能正常运行的:

上面的程序,我们都写死了,稍微改动一下,它就有问题了。再用演示,看看其它问题:

某一天系统维护时,在xxx.aspx改变了一些控件,它就取不到值了,或者是在Debit.aspx.cs中的代码,改变了一下控件ID名,在这些情况,均是在开发或是维护时,因某一处更改,好几个地方均需要更改。一旦取不了值,你需要重新去debug程序。

OK,我们需要解决这些问题,一是代码有可以不断增多,另外一个问题,不想写死控件ID。

其实最终关心的是贷方是否有把钱还回来。因此我们可以建一个接口Interface:

接口写好,贷方均需要实现这个接口,因为借了钱,就要还贷。

先来看看Credit1.aspx.cs:

Credit2.aspx.cs:

Credit3.aspx.cs:

Credit4.aspx.cs:

任何一人,借了钱,均要实作这个接口。

这样好办了:

这个一改过之后,程序藕合已经脱离了。一方只管拿回自己的钱,一方不管是父亲还是儿子还钱(TextBox1还是DropDownList3......)

运行结果与没有重构前一样效果一样。

如果某一个Credit方有任何变更,如果TextBox1改为TextBox9还是DropDownList2改为TextBox,都与Debit借方无关了。如Credit3.aspx:

那只需要修改Credit3.aspx.cs:

全部说完了。虽是一个简单的例子,望你能更好理解接口在asp.net的应用。说实话,在Insus.NET的博客中,经常有使用interface的例子,有时间可以参考参考,可以加深理解与印象:
http://www.cnblogs.com/insus/category/308317.html

本演示源程序可以下面链接下载:
http://download.cnblogs.com/insus/ASPDOTNET/DebitAndCredit.rar

时间: 2024-08-29 12:50:58

还贷的人是谁? 管他是父亲还是儿子,把钱还回来就行的相关文章

如果人没了,钱还在,但已经是阿里、腾讯的了

"钱没了,但人还在""人没了,但钱还在",随着移动支付的普及,事儿更复杂了.越来越多的人将资金放在支付宝.微信钱包.百度钱包.京东小金库等第三方支付平台上,或是为了方便购物.充值.办理生活服务.应对随处可见的支付场景,或是为了投入余额宝.京东理财.财付通理财等简单理财.由此引来更为"痛苦的事儿":一旦因为意外人真没了,这些第三方支付平台里的钱该怎么办?又会落到谁手里? 风险意识提升 更多人开始考虑"身后财" 其实提出这些问题并

天使投资看“人”,VC投资看“项目”,PE投资看“钱”

人 VS 项目 大部分创业者,一谈到找投资人,立马想到项目计划书,互联网上的众多投融资平台充斥着各种各样的计划书,各个投资人的邮箱也快成了计划书的汪洋.但,计划书真的管用吗?我想,事实已经告诉你一切. 我以前曾说过:一般来说,天使投资看“人”,VC投资看“项目”,PE投资看“钱”. 对于早期创业项目,或许是一个构思中的点子,或许是一个构建中的产品,或许是刚开始运营,谁能预测你的项目会不会成功?谁能预判你的项目是好是坏?一切都还不成熟,一切都需要在市场上得以修正,一切都需要经受时间的考验.这个时期

雷军清华演讲实录:小米9年的创新、变革与未来(更好的管理就是不管理。核心是找一帮优秀的人,找一帮不需要管理的人,塑造共同的愿景和目标,给足够激励就行了。)

爱集微·06:37·数码 来源:新浪科技 新浪科技讯 4月5日晚间消息,4月4日,应清华大学国家金融研究院院长.IMF前副总裁朱民之邀,小米董事长雷军在清华大学进行了一次演讲,主题是“小米9年:创新.变革与未来”,主要介绍了小米的创立过程和发展模式,并与与会的清华师生.校友与社会各界人士探讨了未来5G.物联网和人工智能的发展. 谈到创业,雷军表示,“40岁创业和20岁创业最大的差别是,一上来不认为我们自己会成功.”初期创业一年半自己是隐姓埋名,因为一旦开始运营这个公司,满世界都关注,自己压力很大

Redis持久化磁盘IO方式及其带来的问题   有Redis线上运维经验的人会发现Redis在物理内存使用比较多,但还没有超过实际物理内存总容量时就会发生不稳定甚至崩溃的问题,有人认为是基于快照方式持

转自:http://blog.csdn.net/kaosini/article/details/9176961 一.对Redis持久化的探讨与理解 redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化.redis支持两种持久化方式,一种是 Snapshot(RDB)也是默认方式,另一种是Append only file(AOF)的方式.具体的理论说明请见这里. 我们应该明确持久化的数据有什么用,答案是用于重启后的数据恢复.Redis是一个内存数据

[异能程序员]第五章 出手(第一更)

说话之人正是李林! 原本李林并不想掺和此事,但从开始到现在,李林实在有些忍无可忍了.既然忍无可忍,便无需再忍,恰好,也拿这妇人做做实验,反正就算使用自己特殊的能力, 这么多人都在场,谁又能证明就是自己做的. 众人此时都带着惊诧的眼光齐刷刷的射向李林,在众人的注目下,李林缓缓来到了人群中央.李林朝女孩微微一笑,轻声道:"姑娘,把项链先给我好吗?" 女孩脸上此刻的表情说不出的复杂,震惊.崇拜.好奇交织在一起,让女孩此时已经完全忘了自己还有重要的事在身上.看着李林微笑的样子,女孩竟然鬼使神差

接口与抽象类的应用(包括各自设计模式)

一,目标 1)掌握抽象类和接口的实例化操作. 2)掌握模板设计的作用. 3)掌握工厂设计模式的作用. 4)掌握代理设计模式的作用. 5)掌握适配器模式的作用. 6)掌握抽象类与接口的使用区别. 二,具体内容 2.1 为抽象类和接口实例化 在java中,可以通过对象的多态性,为抽象类和接口实例化,这样再使用抽象类和接口的时候就可以调用本子类中所覆写过的方法. 之所以抽象类和接口不能直接实例化,是因为其内部包含了抽象方法,抽象方法本身是未实现的方法,所以无法调用. 通过对象多态性可以发现,子类发生了

一场改变你投资生涯的讨论:职业德州扑克手看交易

各位投友大家好. 校长今天花时间仔细读了一篇长文,叫做<职业德州扑克手看交易:没犯任何错误照样输个精光>,非常棒的文章. 可惜不知道作者是谁,但看得出来,文中讲到的他自己在德州扑克上的经验是真实的. 这篇文章提出了两个非常有价值的概念. 第一个叫盈亏同源.有一些亏损是你在追求盈利道路上必须要支付的成本,这是不可避免也是不应该避免的.因为你一旦避免了这些亏损,你同时也就失去了盈利的机会. 而另外一些亏损择时可以避免也是应该避免的.所谓高手就是在这个部分发挥功力. 第二个概念是把风险分成了三层:系

网络工程师成长日记339-联合利华项目

这是我的第339篇原创文章,记录网络工程师行业的点点滴滴,结交IT行业有缘之人 西安联合利华网络改造我是个大菜鸟,还没有入行,头一天接到老大的电话,说十九号去联合利华,有个项目要做.这个项目非常简单,老大的意思我去现场锻炼一下,看看最普通的上架一台路由器能不能搞定.早上就早早去了基地,取了工具和苟坤一起去三禾路一带.我对西安不熟,在临行之前,查了地图----西门再转211路.有网络就是方便,去哪一查就明了了. 大约八点三十分我们到了西门,正在等车,老大打电话过来,说他也马上就到西门果然一会,老大

五十万年薪的人是怎么过日子的?

五十万年薪的人是怎么过日子的?修改 由于各行各业及自己本身原有基础不一样,可能大家的回答没有横向可比性,希望大家能够在回答中包含以下信息:1 自己年龄,从事的行业岗位,属于什么职级2 受过的教育水平3 父母能够在你刚开始工作时提供多大帮助4 自己在哪线城市工作 关于生活状态的其他问题:你认为怎样的生活状态是最理想的?年收入50元的人是怎么过日子的?一万年薪的人都是怎么过日子的?十万年薪的人都是怎么过日子的?百万年薪的人都是怎么过日子的?千万年薪的人都是怎么过日子的?修改 举报9 条评论 分享 •