asp.net面試零碎問題總結
1.ViewBag和ViewData的異同點
答:
同:生命週期相同,僅對當前View有效
異:ViewData屬於Key/Value字典集合,比ViewBag要快,查詢資料後需要轉換為相應的型別格式
ViewBag屬於Dynamic型別物件,比ViewData慢,可讀性好不需要轉為相應的型別格式
2.Int和Int32有什麼區別
答:沒有任何區別,int是C#的型別,他對映到類庫的Int32類。
2.什麼是值型別 什麼是引用型別 DateTime 是值型別 還是 引用型別
答:值型別:int ,flaoat,bool之類的基礎型別,以及用Struct定義的型別,如Datetime
引用型別:如string 、陣列,以及用class定義的型別的都是引用型別。
DateTime是值型別
3.裝箱與拆箱 is as?
答:裝箱是將值型別變為引用型別,拆箱是將引用型別變為值型別,強轉型別用as,is是用來判斷的
4.Http請求有哪些
答: Http有8種請求,Get,Put,Post,Head,Delete,Options, Trace, Connect
5.Http狀態碼 200 404 301 304 500
答:200:伺服器成功返回網頁
404:請求的網頁不存在
301: 定向,就是說瀏覽器在拿到伺服器返回的這個狀態碼後會自動跳轉到一個新的URL地址
500:內部伺服器錯誤
6.事件與委託
答: 委託:委託的主要好處是可以把方法作為引數/屬性來賦值或傳遞。事件是委託的一種具體應用。委託可以理解為一種介面,具體的方法實現這個介面,在開發階段只需要關心委託的定義就可以呼叫,而不用關心它如何實現的或者在哪裡實現的。
事件:
1、事件是一種委託。我把事件理解為由系統定義的EventHandler<T>泛型的委託。該委託需要的兩個引數型別分別為object和T。T必須派生自基類EventArgs
2、事件的處理過程是:釋出-訂閱模式。
3、可以通過+=、-=建立訂閱和取消訂閱。
7.This 有哪些用法
答:this代表當前類的例項物件
用this串聯建構函式
為原始型別擴充套件方法
索引器
8.DDD AOP IOC
9.工廠模式 單列模式
10.Ajax跨域
答:使用Jsonp方式,callback回撥