.net程序员面试题

1.      在web页面中不论显示器的分辨率的大小是800×600,还是1024×768使得页面都显示在屏幕中间。

    答:Margin:auto;

2.      请利用正则表达式验证一个字符串是否为数字串

        (请用csharp)。

           

 1  public static bool RegexNum(string a)
 2 
 3     {
 4 
 5       Regex rg=new Regex ("\\d+");
 6 
 7       MatchCollection mc= rg.Matches(a);
 8 
 9       foreach (var item in mc)
10 
11       {
12 
13           if (item.ToString()==a)
14 
15           {
16 
17               return true;
18 
19           }
20 
21       }
22 
23       return false;
24 
25     
26 
27     }

 

 

3.      请用HTML在客户端画出一个5行4列的表格,并用Javascript访问表格第1行的2列的内容

    

View Code
<table border="1" id="table1">
            <tr><td></td><td>12</td><td></td><td></td></tr>
            <tr><td></td><td></td><td></td><td></td></tr>
            <tr><td></td><td></td><td></td><td></td></tr>
            <tr><td></td><td></td><td></td><td></td></tr>
            <tr><td></td><td></td><td></td><td></td></tr>
            </table>
View Code
 function getVal() {
         var tab = document.getElementsByTagName("table");         
         for (var i = 0; i < tab.rows.length; i++) {
             for (var j = 0; j < tab.rows[i].cells.length; j++) {
                 alert(tab.rows[0].cells[1].innerHTML);
             }
         }  
         
     }

 

4.      请用javascript脚本实现弹出无边框窗口显示a.htm页

    

View Code
window.open(url, 'newwindow', 'height=600px, width=400px, top=100px, left=400px, toolbar=no, menubar=no, scrollbars=no,resizable=no,location=no, status=no');

 

6.      运用ASP.NET的输出缓冲来存储动态页面.

      

<%@ OutputCache Duration="10" %>

 

8.      本地计算机上有SQL 2000登录密码式 password 请用CSharp 创建与SQL的连接并把Northwind数据库中的sysusers表中的数据读出放入Table数据集。

    

View Code
 string conStr="server=.\\SQLEXPRESS;uid=sa;pwd=p@ssw0rd;database=Northwind";
        using (SqlConnection conn=new SqlConnection (conStr))
        {

            string sql = "select * from sysusers";
            SqlCommand cmd = new SqlCommand(sql,conn);
            SqlDataAdapter sda = new SqlDataAdapter(cmd);
            DataSet ds=new DataSet ();
            conn.Open();
            sda.Fill(ds);
            return ds;
        }

 

9.      请用csharp设计一个算法,实现将数字转化为字符。

        如(0-A,1-B,26-AA)。

10.    Session的作用是什么,当不能使用Session会话时最可能出现的原因是什么?

        答:    服务器繁忙引起的session丢失!Application 和 Session 两种会话有什么不同。Application会话自身具有那些属性?前者是一个全局性的机制,在该网站的第一个用户访问的时候创建,服务器关闭的时候消失。后者是用户级别的,在该用户访问网站的时候会为该用户建立一个session本地储存为cookies…

Application.StaticObjects

   

13.    请简述一下你对WebService的了解。

    答:开放性,跨平台性

14.    .net的机制是什么?

15.    请说出ASP,ASP.NET的区别

    asp.net是代码分离的,你可以将事件、代码全部写在*.cs或者*.vbs里面

通过编译后,你只需要将*.aspx文件进行发布,客户看不到你的源代码*.cs
codebehind 只是其中的一种编码方式, 也可以用传统的方式全部写在一个 aspx 文件里面的, 一个是解释执行, 一个是编译的。
一个是弱类型的语言, 一个是强类型的语言。
1)整体架构上更加紧密,表现在程序员的开发有了ide窗口,程序的撰写方式可以做到
页面元素与代码分离。
2)可用工具及条件更方便,其继续发扬其服务端的优势,可以直接调用api及其他组件等,
跟操作系统的结合更紧密。
3)借用xml强大的描述优势,及其xml引擎,做到中间代码的跨平台性。
4)开发语言多样化,编写asp。net的语言可以是jscript/c#/vb有一种语言的可选。
5)中间编译的特性,这不用多说了,是其经常引以为自豪的东西。
6)其封装了非常多的环境用的东西,你不必关心客户端是什么浏览器。
这些是我认为的最主要的特点
作为我也是从asp向。net转变,我感觉有以下几点不便,
1)页面处理与服务端处理的过程容易造成开发人员的混淆
2)页面javascript代码的嵌入与调用没asp直接了当,让人生厌
3)系统自带了页面上的常用组件,如label/text/datagrid 等等,而datagrid似乎受
到很多开发人员的喜欢,我感觉不爽,深层次的控制必须用javascript
4)其类的概念让概念不太明确的程序员们比较难编出结构紧凑优化的代码,
我认为这不是一个程序员水平的事情,而是程序员也应归属于开发梯队当中。
总体感觉:
无论其为服务端的开发人员提供了利用操作系统资源多么美妙的好处,其作为下一代的开发工具,与asp的相似之处特别少,一般开发人员转形会比较困难,会损失很多大伙以往的开发经验。
另外,作为最终的页面,其必将是一个html的文本,这一点目前ms通过把服务端xml导出成为html页面。看了自己的开发的。net程序,然后再看页面上的源文件感觉有种说不出的感觉,受骗也罢,佩服也罢。
在开发。net过程中从asp程序员的角度来看,纯粹是脱裤子放屁,什么类封装,什么datagrid,既不好做,也不好看,更不好自主的调整页面元素的风格。

16.    说出下面几个函数的区别:

        private void test(string str){…}

        private void test(ref string str){…}

        private void test(out string str){…}

  

第一个是传值,在test中其实是一个拷贝,如你的str=“aaaa”,然后调用test,在test中改为"bbbb",其实你外面的str还是aaaa
第二个,传的是引用,你在test中改的会影响外面的,如你的str=“aaaa”,然后调用test,在test中改为"bbbb",你外面的str是bbbb
第三个,是类似一个返回值,和第2个的差别是,第3个会在test里面new一个string传出来,这时候,如果你传进去的是个null也没关系,而第2个test里面是不会new的,如果你传个null进去,就有可能出错
posted on 2013-04-19 13:30  RocWang丶  阅读(378)  评论(0编辑  收藏  举报