您的位置:首页 > 职场人生

C#与.NET程序员面试宝典 Day2

2015-12-30 20:40 281 查看
15年底,似乎陷入了困境,老婆上个月工资没发,小房的房租也没收到,我的工资也没发,全都拖着。。。而且元旦离职后,新的工作还没着落。。。上次介绍的工作机会只回复了已转人事,春节后可能有个项目会要人。。。总不能在家等一个月吧,问他能不能先面试,如果通过了,等一个月是可以;如果没通过,也好找工作。还没后续消息。。。

今天下班碰到一老一少两个女的在电梯口,说是要买4楼的同户型房,是网上看到的司法拍卖,但明天要出差,能不能到我家看一下户型。。。

刚开始我很犹豫,因为回小区时顺便看了下家里的灯,家里人出去了,单独带陌生人来家,多少有些风险。

虽说是女的,但两个人把下了药的手帕蒙住我还是不成问题的。。。醒来后手机钱包和肾都没了。。。

或者是顺手牵羊捞走一些东西是不成问题的,再或者是来踩点的也不是什么好事。。。

好在看上去真是看房的,我对自已家和小区还是挺满意的,当时买的时候正值08、09年房市最低潮,四千多打着大广告还没人买,现在一万多。。。如果不是老爹当年顶住压力借钱买了房(亲戚都说国家要调控,要降到两千多。。。还信调控吗。。。),现在要怎么才能赚得回本。。。

事后我上网搜了下,4楼确实有司法拍卖,但愿是件真事吧,认识个邻居,也把人与人的信任感传递下去。

这几天怎么又感冒了,好像一直没好,头痛、精神不振。先把最后一天熬过去再说吧,今晚还是看这本面试宝典,好歹把这本书看完。

一、章节忘了

1、checked/unchecked

public static void Main(string[] args)
{
byte i = 255;
checked{
i++;
}
Console.ReadKey();
}


加了checked,会检查溢出,不加或加unchecked,则不检查(此例中溢出变成0)

2、三目运算符

public static void Main(string[] args)
{
string a = "A";
string b = a == "A" ? "B1" : "B2" + "END";
string c = (a == "A" ? "C1" : "C2") + "END";
Console.WriteLine(b); //B1
Console.WriteLine(c); //C1END
Console.ReadKey();
}


就是要注意有些场景要加括号,不然会把后面的内容当作是三目运算符的一部份

3、is/as

is运算符用于检查对象是否与给定类型兼容,如果兼容返回true,反之返回false。
as运算符用于在兼容的引用类型之间转换,如果无法转换,返回null而不是引发异常

4、DateTime,项目中经常用到,就不细举例了

5、静态构造方法:静态构造方法是最先被执行的构造方法,并且在一个类里只允许有一个无参的静态构造方法

6、事件/委托:事件是定义了一个特定的委托成员,订阅事件本质就是把事件加入委托链表中

二、ASP.NET应用开发

1、Request

Request.QueryString:用于获取Get传递的

Request.Form:用于获取Post传递的

Request.ServerVariables:获取参数集合

一般项目中默认用Request["xx"],这样会先找Request.QueryString,再找Request.Form,以防有时用$.get,有时用$.post。当然有时为了严谨也可以直接用Request.Form来强制要求Post

2、Response

Response.Charset:字符集

Response.ContentType:HTTP内容类型

Response.Expires:页面有效缓冲期

Response.Status:HTTP状态值,如200成功或404未找到

Response.Write("str"):最常用到,直接输出

Response.Redirect("url"):跳转url

Response.Clear() / .End() / .Flush() : 分别为清除、结束、发送缓冲

3、Server:是HttpServerUtility的类型实例

Server.MapPath():最常用,将虚拟目录转成实际目录

Server.Transfer():终止当前页,执行新页

Server.HtmlDecode() / .HtmlEncode() :解码编码

4、ViewState:是个加密、压缩的隐藏字段,不能跨页,自动维护,存在于客户端

5、Session / Cookie / ViewState区别:

Session不适应长时间保持数据,默认是20分钟,适用于小量数据。

ViewState常用于保存单个用户状态信息,有效期为页面生存周期,不适应大数据

Cookie用于保存浏览器请求信息,明文保存。

6、页面跳转:

Response.Redirect():地址为变

Server.Transfer():只能同目录或子目录,地址不变

Server.Execute():类似针对新页面进行函数调用,返回结果

a标签的href:有带样式

ASP.NET的HyperLink控件:ASP.NET专用

JS脚本:比较灵活,还可以加入其它逻辑

7、ASP.NET存储会话:

InProc存储在IIS进程(默认):性能高、不能跨服务器、受IIS影响、

StateServer存储在状态服务器:要设置stateConnectionString="tcpip=192.168.0.xx:42424",并在该服务器上装ASP.NET State Server服务

SqlServer存储在数据库:可跨服务器,稳定,但负载大。开启数据库服务和SQL Server代理服务,在C:\winnt\Microsoft.NET\Framework\[version]\找到InstallSqlState.sql(可能每个系统不大一样,要去找找看),会新建ASPState库,有些存储过程,具体表是在tempdb的ASPStateTempSession表。要配置sqlConnectionString="data source=localhost; Integrated Security=SSPI;"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: