随笔分类 - ASP.NET
摘要:"A用户控件有一个textbxB用户控件有若干Checkbox我要在B中选中若干 点击保存然后把checkbox的值赋给A中的Textbox"问题来自论坛。解决此问题,可以首先分析三者的职责,A用户控件,B用户控件以及B用户件的铵钮;如果更细一点来分析,A用户控件里的TextBox控件,此Textbox需要赋值,值从哪里来,它不用知道也无需知道。B用户控件里也有一个CheckBoxList控件,它只有数据,用户选择的值,将给谁,它也不知道,管不了。还有一个B用户控件的铵钮,铵钮将产生Click事件,它只管保存数据,把CheckBoxList选择的值,保存至TextBox。O
阅读全文
摘要:有在论坛看见一帖,《C#用什么方法可以减少或不使用switch》Insus.NET的解决方法,是使用工厂方法来处理,可以创建一个工厂接口,然后每个方法设计为一个工厂类,并实现工厂接口。工厂接口:IGetFactoryusing System;using System.Collections.Generic;using System.Linq;using System.Web;/// <summary>/// Summary description for IGetFactory/// </summary>namespace Insus.NET{ public inter
阅读全文
摘要:在开发asp.net程序时,用户的数据将保存至数据库,程序与数据库之间的数据操作,会涉及到往数据库添加数据,编辑数据,更新数据和删除数据等。本次Insus.NET介绍的是工厂方法,因此我们会从这几个操作入手。介绍工厂方法设计模式,得先从简单工厂设计模式(Simple Factory)开始,简单工厂,有一个操作类,这个类有一个virtual方法,好让其它子类继承与重写:Operationusing System;using System.Collections.Generic;using System.Linq;using System.Web;/// <summary>/// Su
阅读全文
摘要:生活在城市,平时少不了去餐馆吃饭。或是加班下班之后,难免吃上宵夜之后,才回家。在餐馆或是大排档坐下,老板一般都会在第一时间,给你上茶水以及菜谱(在此博文中,这是重点)。我们接过菜谱之后,都会把菜谱遍历一遍,不放过任一美味与自己喜欢吃的佳肴。遍历一遍,此就是一种开发的设计模式,叫迭代器设计模式。迭代器模式,它提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。我们接过菜谱,使用两眼从头至尾或是从后往前看。菜谱聚集结构提供了第一项,下一项,是否结束,当前是哪一项了,是不是自己需要点的菜式。因此我们提供一个迭代的抽象类:Iteratorusing System;using Sys
阅读全文
摘要:开发的设计模式,是博大精深的,只有一步一个脚印和循序渐进的学习与应用,才能有进步。近段时间,Insus.NET把自己理解设计模式,简单写了一下与分享自己的理解与想法。得到很多高手与网友的热心评论,让Insus.NET学习与进步不少,真心感谢了。前几天有写了一篇《烹饪,简单工厂(Simple Factory)》,一开始就创建一个"烹饪类",来负责创建其他类的实例。接下来创建炒,煎,煮,炖等类。今天,Insus.NET也是以烹饪来写一个建造者设计模式,烹饪是膳食的艺术。Insus.NET虽然不是厨师,但喜欢品尝各种美味的佳肴。此篇是介绍建造者设计模式,我们以烹饪的方式做一顿家常
阅读全文
摘要:Insus.NET在想,每在公司或是老板给自己发工资时,每个人都会重新计算一下自己的工资,是否正确。好象老板或是会计都会把自己的工资计错了似的。因此,每个都人都是工资计算高手。工资计算,需要知道基本工资是多少; 否有加薪,加薪方式,是按基本工资的百分比来加,还是由得公司或是老板随心而加,表现加多些,表现不好加少一些;是否有加班,加班的方式也要清楚,工作天加班,普通假日加班,或是法定假日加班;是否有补帖等等。每一种方式,在此也算得上是算法,完成的都是相同的工作,只是实现不同罢了。为了简化与分工,我们可以把每种算法写成一个独立的类,减少它们之间的耦合。每个算法,返回一个结果,因此可以写一个抽象类,
阅读全文
摘要:“烹”就是煮的意思,“饪”是指熟的意思,狭义地说,烹饪是对食物原料进行热加工,将生的食物原料加工成熟食品;广义地说烹饪是指对食物原料进行合理选择调配,加工治净,加热调味,使之成为色、香、味、形、质、养兼美的安全无害的、利于吸收、益人健康、强人体质的饭食菜品包括调味熟食,也包括调制生食。因此,我们产生...
阅读全文
摘要:一个研发公司就如外观设计模式,它有诸多开发团队(子系统),前端开发团队,程序开发团队,数据库开发团队,测试团队等等。为各个开发团队能高度协调,公司定义一个协调接口,使得各个开发团队更加协调。前端开发团队:FrontEndDevelopmentTeamusing System;using System.Collections.Generic;using System.Linq;using System.Web;/// <summary>/// Summary description for FrontEndDevelopmentTeam/// </summary>name
阅读全文
摘要:用简单的例子,说明代理(Proxy)设计模式。Insus.NET在家忙写程序没有时间,手机没钱了,叫儿子给一百元去超市(此超市有手机充值的服务)帮Insus.NET手机充值(话费)。手机充值的事,Insus.NET会做,儿子也会做,但是Insus.NET因某些情况,不能亲自办,叫儿子去代理(Proxy)。定义一个抽象类[Work],让自己或是儿子类别都能实现的充值方法:Workusing System;using System.Collections.Generic;using System.Linq;using System.Web;/// <summary>/// Summar
阅读全文
摘要:行为抽象即可写成接口(Interface)。如此http://www.cnblogs.com/insus/archive/2013/02/24/2924190.html链接的例子中的开与关,就可以把它们设计为抽象方法。我们宣告接口时,使用interface来声明,就如宣告类使用class一样。在编程规范中,使用字母"I"开头。接口中的所有签名,如方法,属性,索引器,事件等。不能带修饰符,比如public,private等,不能有任何实现内容,也不能声明虚拟(virtual)的或静态(static)的等。ISwitchableusing System;using System
阅读全文
摘要:平时在asp.net开发中,很少使用到抽象类,一个小小例子来学习一下。抽象类(abstract class),不能实例化,因此我们可以把不被实例化的类,宣告为抽象类。抽象类内包含了抽象方法(abstract void),它只能写在抽象类中,没有实现部分,只能在派生类重写(override)或实现。去年小新房装修,去了家居装饰城,看了各式各样的灯饰(实例),统称为灯(抽象)。下面的在抽象类Light中,有两个抽象的方法。Lightusing System;using System.Collections.Generic;using System.Linq;using System.Web;///
阅读全文
摘要:本博文,Insus.NET教你怎样显示非站点目录下的图片,你可以显示站点所在服务器所有驱动器目录的图片,以及映射网络磁盘路径的图片。下面举两个例子,一是显示D盘下图片,另一个例子是显示映射网路路径图片。最实用于在企业内部,经常性需要临时显示图片,但用户不想上传大量图片,而是放置在某一台工作站上。因此需要映射路径即可,或是直接拷贝至服务器某一驱动器之下即可。下面例子是显示映射网络磁盘目录图片:你可以创建一个ashx 文件来处理图片(核心代码):ShowOutSiteImage.ashx<%@ WebHandler Language="C#" Class="In
阅读全文
摘要:前天有一网友问及有关设计模式的适配器模式(Adapter)时,说不太好理解。让Insus.NET能否举个简单的例子来说明一下。下面的动画是Insus.NET做出来的效果:上面的演示,两个灯的规格一样,要求输入的电压为15伏。Light1是直接使用,而Light2是使用Adapter(电源适配器)。因此Light1只能接收15伏的电压,小于15伏,会提示电压过低,如果超过了15伏,Light1肯定被烧坏。Light2使用了电源适配器,它接收15伏至220的电压,在这电压范围之内,电源适配器会把电压转为15的电压。小于15伏,会提示电压过低,如果超过了220伏,适配器被烧坏。好,我们程序开始,先创
阅读全文
摘要:本博文是让你学会读取站点某一目录的图片,掌握LINQ与泛型Dictionary<TKey,TValue>的使用。首先准备好几张图片存在站点某一目录之下,本例中的存储图片的目录名为MsSiteImages,图片你可以从微软网站下载http://windows.microsoft.com/en-US/windows/home我们写一个泛型数据集,将存储目录的图片信息:View Code private Dictionary<int, string> GetData() { Dictionary<int, string> dic = new Dictionary&
阅读全文
摘要:Asp.net开发要求,就是用户控件(UserControl)是集成一个功能,需要处理好的数据,然后存数据库中并显示于网页上,让用户能检测到处理的数据情况。本演示中,Insus.NET只是作了一个简单的举例而已,并应用了委托来实现。为了让大家更能理解,可以先看看操作动画演示:在你新建一站点上,创建一个PageB.aspx网页以及UcB.ascx用户控件,在UcB.ascx上拉一个TextBox和CheckBox以及Button控件:UcB.ascx<%@ Control Language="C#" AutoEventWireup="true" Co
阅读全文
摘要:通用的检查方法。首先定义好有效的文件扩展名,存放在阵列中。在JavaScript获取FileUpload控件的文件路径,并取得路径中的文件扩展名。再与阵列中的扩展名比较,如果存在,说明上传的文件是有效的,反之无效。 <asp:FileUpload ID="FileUpload1" runat="server" /> <asp:Button ID="btnUpload" runat="server" Text="Upload" OnClientClick="return
阅读全文
摘要:最近开发的应用软件,其中一个资料数据维护介面,分享一下(无代码):
阅读全文
摘要:在数据库中,存储布尔值的字段是允许可空的。如果空值绑定至DropDownList控件上时,会出现异常:上例中,并没有真正去读取数,只是获取数据时,有获取到null值。 你可以根据这篇作为实例样版程序:http://www.cnblogs.com/insus/archive/2013/01/28/2880656.html解决方法,就是在获取的值判断一下,是否为空值:View Code private void Data_Binding() { DataTable dt = DataSource("Whether.xml"); object v = null; ...
阅读全文
摘要:刚帖完这个类库http://www.cnblogs.com/insus/archive/2013/01/28/2880618.html,就有网友在SKYPE问及,怎样使用它?Ok,Insus.NET举一个小例子,实现DropDownList控件,并添加一个空选择(请选择...)之类。准备好数据,Insus.NET在站点的App_Data目录之下,添加一个XML文件:Whether.xml<?xml version="1.0" encoding="utf-8" ?><Whethers> <Whether> <Whe
阅读全文
摘要:Insus.NET重构过的一个List Control Utility的类库,它包括DropDownList,RadioButtonList,ListBox以及BulletedList控件的绑定重构。改善以前只能传入DataTable和HashTable数据源。 前版本类库http://www.cnblogs.com/insus/articles/1399645.html。最新版下载地址:http://download.cnblogs.com/insus/library/InsusListControlUtility.rar在.NET Framework 4.0或以上使用。下载解压,把Insu
阅读全文