asp.net 面试题

1、请用一个例子来说明泛型的好处。
答:泛型可以存放任何的引用或值类型,避免了显式强制转换。
List<T> list =new ArrayList<T>();
list.add("可以放个值,也可以放对象")
访问时由于已经指定了存放类型T ,所以在取值时不需要强制转换了。可以用:

foreach(T t in list){
    Console.WriteLine(""+t.属性);
}

使用时很方便 也精简了代码


2、描述下你常用的设计模式,并解释下你在什么业务逻辑下用的?为什么要用这样的模式?
答:MVC设计模式,在使用三层架构时最适合,它将页面和代码很好的分离,也将逻辑代码和显示代码很好的分离开来,易于管理和维护升级。


3、有两个有序整形数组(已经按从小到大排序),请写一个算法找出二者相同的元素和不同的元素。
答:int[] num1=new int[]{3,5,7,8,9}    int[] num2=new int[]{2,4,6,8}
这里要用到两个循环:

    int commonNumInt=0;
    int diffentNumInt=0;
    for(int i=0;i<num1.length;i++){
         for(int j=0;j<num2.length;j++){
                if(num1[i]==num2[j]){
                      commonNumInt ++;   //相同元素的个数
                      break;
                }else{
                     if(j==num2.length-1){
                      diffentNumInt ++;  //不同元素的个数     
                     }
                }
                     
         }
    }


4、杂志业务有两个表,分别是杂志信息表和期刊表,请简要设计下表结构,并写一个sql查找所有杂志的最新期刊。
答:杂志信息表 tbl_MagazineInfo
杂志编号:magazineID nvarchar(5) not null
杂志名称:magazineName nvarchar(20) not null
杂志作者:magazineAuthor nvarchar(20) not null
出版时间:magazineTime nvarchar(20) not null
出版社名:magazinePubliName nvarchar(50) not null
        期刊表 tbl_Periodical
期刊编号:periodicalID nvarchar(5) not null
杂志编号:magazineID nvarchar(5) not null
期刊名称:periodicalName nvarchar(20) not null
期刊时间:periodicalTime nvarchar(20) not null

select max(periodicalTime) from tbl_Periodical where magazineID in(select magazineID from tbl_MagazineInfo)


5、新闻通常有多个标签(关键字),请设计表结构来描述二者的关系,要求很方便查找某个新闻的标签和查找指定标签所有的新闻。
答:新闻信息 tbl_NewInfo
新闻ID: newID int not null
新闻名称: newName nvarchar(20) not null
        标签信息 tbl_MarkInfo
标签ID: markID int not null
标签名称: markName nvarchar(20) not null
        中间表 tbl_NandM
ID: id
新闻ID: newID int not null
标签ID: markID int not null
通过指定新闻名获得多个标签:
select markName from tbl_markInfo where markID in( select markID from tbl_NandM where newID =(select newID from tbl_NewInfo where newName ='参数'))
通过标签获得多个新闻:
select newName from tbl_NewInfo where newID in(select newID from tbl_NandM where markID =(select markID from tbl_MarkInfo where markName ='参数'))


6、请设计一个手机通讯录数据库,要求兼容性好(支持市面上的多数机型),可扩展性好。

7、假设一个老系统出现了性能问题,没有源码,没有数据库设计文档,是C#+Sql2000开发的,请问你通过什么方式可以快速的定位问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值