本篇从案例起先,为了更好领悟接口以及C#的文化,本篇抛开客户端jQuery或是Javascript知识,也就是说ASP.NET与C#共同座谈。

进去后面,你可以先细读msdn随笔《Cross-Page Posting in ASP.NET Web
Pages
.aspx)》http://msdn.microsoft.com/en-us/library/ms178139(v=vs.110).aspx 或者论坛上一篇问题

为啥自己那一个跨网页传递一直报错!未将目标实例化??http://bbs.csdn.net/topics/390937410 。这两篇均可以归为同样类知识。然则它们有一个联机的地方,就是在对象页中,去指定前一页控件名称,绿色箭头指向高亮地方:
jQuery 1

这边就是这一次我们谈论的关键,也就是说你无法把它写死了。比如说,你(借方)有成百上千钱,借给了不少人(贷方),几个人不确定,现在你唤醒或是他们要还你钱。因而借方不可以只使用TextBox1去代表所有贷方。
买方有可能是TextBox2,DropDownList3,RadioButtonList2,……等等

诸如此类您得在地点MSDN代码示例中要写上过多代码,如:
jQuery 2

现行,我们要如何缓解那多少个问题,我们什么了然还钱的人是何人。

为了解这多少个题材,下面Insus.NET创造一个asp.net站点,也有意无意创立好多少个网页,去代表借(debit)贷(credit)。

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

 

jQuery, Debit.aspx.cs:
jQuery 4

 

下面是买方Credit,Insus.NET在示范中,列举了多少个,实际条件中,也许会有少有多。先是Credit1.aspx:
jQuery 5

 

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

 

Credit3.aspx:
jQuery 7

Credit4.aspx:
jQuery 8

 

个别演示一下,程序是能正常运作的:
jQuery 9

下边的先后,大家都写死了,稍微改变一下,它就有题目了。再用演示,看看其他问题:
jQuery 10

某一天系统保障时,在xxx.aspx改变了有的控件,它就取不到值了,或者是在Debit.aspx.cs中的代码,改变了一晃控件ID名,在这些情状,均是在开发或是维护时,因某一处改动,好多少个地点均需要变更。一旦取不了值,你需要再行去debug程序。

OK,大家需要解决这么些问题,一是代码有可以持续扩张,此外一个题目,不想写死控件ID。

骨子里最后关心的是买方是否有把钱还回到。由此我们能够建一个接口Interface:
jQuery 11

接口写好,贷方均需要贯彻这些接口,因为借了钱,就要还贷。

先来看望Credit1.aspx.cs:
jQuery 12

Credit2.aspx.cs:
jQuery 13

Credit3.aspx.cs:

jQuery 14

Credit4.aspx.cs:
jQuery 15

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

那般好办了:
jQuery 16

本条一改过将来,程序藕合已经淡出了。一方只管拿回自己的钱,一方不管是姑丈或者外甥还钱(TextBox1依然DropDownList3……)

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

倘使某一个Credit方有任何改动,假诺TextBox1改为TextBox9依旧DropDownList2改为TextBox,都与Debit借方无关了。如Credit3.aspx:
jQuery 17

这只需要修改Credit3.aspx.cs:
jQuery 18

一体说完了。虽是一个简易的例证,望你能更好精通接口在asp.net的施用。说实话,在Insus.NET的博客中,通常有应用interface的例子,有时光足以参考参考,可以变本加厉了然与记念:
http://www.cnblogs.com/insus/category/308317.html

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

 

相关文章

网站地图xml地图