1.EF框架。數據庫
答:EF是微軟提供的ORM框架。編程
使用Ado.Net須要設置Connection、Command、DataSet、DataReader與數據庫交互,把不少精力放在了Ado.Net代碼上,EF框架把這些進行了封裝,在訪問數據庫的時候不用關注這些,EF把數據庫中的表映射到程序中的實體類中,直接操做實體類來完成對數據庫的操做。數組
2.session與cookie的區別?瀏覽器
答:cookie以文本格式存儲在瀏覽器上,存量有限,若不設置過時時間,則表示這個cookie的生命期爲瀏覽器會話期間,關閉瀏覽器窗口,cookie就消失。安全
若設置了過時時間,瀏覽器就會把cookie保存到硬盤上,關閉後再次打開瀏覽器,這些cookie仍然有效直到超過設定的過時時間。cookie
session存儲在服務端,比cookie安全,session過時/失效(默認30分鐘)。session
3.數據庫中,事物的性質?數據結構
答:原子性:要麼所有成功,要麼所有失敗。架構
一致性:數據庫從一個一致性狀態變換到另外一個一致性狀態;假設用戶A和用戶B二者的錢加起來一共是5000,那麼無論A和B之間如何轉帳,轉幾回帳,事務結束後兩個用戶的錢相加起來應該還得是5000併發
隔離性:當多個用戶併發訪問數據庫時,操做同一張表,數據庫爲每個用戶開啓的事務,不能被其餘事務的操做所幹擾,多個併發事務之間要相互隔離。
持久性:一個事務一旦被提交了,那麼對數據庫中的數據的改變就是永久性的,即使是在數據庫系統遇到故障的狀況下也不會丟失提交事務的操做。
4.什麼時候必須生命一個類爲抽象類?
答:當這個類中包含抽象方法時,或是該類並無徹底實現父類的抽象方法時。
5.MVC框架中ActionResult、JsonResult、ContentResult哪一個能夠return view()
答:ActionResult
6.Aspx頁面中,updatepanel的做用是什麼?
答:局部刷新
7.能夠採用foreach迭代的類對象必須知足什麼條件。
答:須要實現IEnumerable接口或聲明GetEnumerator方法的類型。
8..net環境下把數據庫數據轉化成XML
答: DataTable dt = new DataTable("Table");//設置Table名稱
dt.Columns.Add("name", System.Type.GetType("System.String"));//添加列
dt.Columns.Add("age", System.Type.GetType("System.Int32"));
DataRow dr = dt.NewRow();//建立新行
dr["name"] = "會划水的武大郎";
dr["age"] = 24;
dt.Rows.Add(dr);//添加數據
StringWriter writer = new StringWriter();
dt.WriteXml(writer);
string xmlstr = writer.ToString();//DataTable轉XML
writer.Close();
9. 點擊按鈕,彈出確認對話框,點擊肯定後彈出「刪除完畢」
答: var str = confirm("請選擇點擊一個按鈕!");
if (str == true) {
alert("刪除完畢");
}
else {
alert("關閉對話框");
return;
}
10.請寫出一個JSON的例子
答:{"name":"小明","age":27}
11.for和foreach那個效率更高?
答:須要循環數組結構的數據使用時,建議for循環,由於for循環採用下標訪問,對於數組結構的數據來講,採用下標訪問比較好。
須要循環鏈表結構的數據時,不要使用for循環,數據量大的時候有可能會致使系統崩潰,緣由是由於foreach使用的是迭代器。
因此foreach效率更高。
12.WebService基於什麼協議?
答:使用SOAP協議實現跨編程語言和跨操做系統平臺。
13.聲明靜態數據庫鏈接對象,全部業務類都引用該靜態連接對象訪問數據庫?
答:可能不可用,會引發隊列延遲等問題。
14.C#提供一個默認的無參構造函數,當我實現了另一個有一個參數的構造函數時,還想保留這個無參數的構 造函數。這樣我應該寫幾個構造函數?
答:兩個,一旦你實現了一個構造函數,C#就不會再提供默認的構造函數了,因此須要手動實現那個無參構造函數。
15.可以阻止某一個類被其餘類繼承麼? 可以實現容許某個類被繼承,但不容許其中的某個方法被覆寫麼?
答:使用關鍵字sealed,密封類不容許被繼承。標記這個類爲public,並標記這個方法爲sealed。
16.什麼事強類型,C#是嗎,JS呢?
答:對象的類型在編譯時刻肯定。C#強類型、JS弱類型。
17.金額等精確的數值聲明爲何類型?
答:decimal
18.經過程序控制GC的強制回收是否能夠提升效率?
答:顯式執行GC.Collect()有可能給內存回收增長負擔,並且不必定能真正回收內存
19.int與int?的區別
答:int?爲可空類型,把值類型裝箱爲引用類型,int是值類型,不能設置爲null
20.求數列(1,1,2,3,5,8...)的和
答:public int GetNum(int x)
{
if (x <= 0)
{
return 0;
}
if (x == 1 || x == 2)
{
return 1;
}
return GetNum(x - 2) + GetNum(x - 1);
}
21.B/S架構下,在session中存儲一個DataTable的對象y,在何時會被GC自動回收?這種方式存儲數據是否合理?若是application增長了對y的引用,何時會被回收?
答:Session超時失效後,GC隨機回收。Application對Y的引用回收,在重啓或者關閉iis時發生。
22.System.String與System.StringBuilder有什麼區別?
答:System.String是不可變的字符串。System.StringBuilder存放了一個可變的字符串,使用append方法串修改字符串。
StringBuilder底層數據結構是char數組。
23.舉例寫一個單利模式
答:public sealed class Singleton
{
public static Singleton instance = null;
private Singleton(){}
public static Singleton Instance(){
if( instance == null ){
instance = new Singleton();
}
return instance;
}
24.描述一下abstract、virtual、override各自的做用於區別
答:irtual和abstract都是用來修飾父類的,經過覆蓋父類的定義,讓子類從新定義。
virtual修飾的方法必須有實現,而abstract修飾的方法必定不能實現。
virtual能夠被子類重寫,而abstract必須被子類重寫。
override重寫的基方法必須是 virtual、abstract 或 override 的修飾,從新父類。
25.冒泡排序
答: int[] arrays = { 1, 8, 5, 9, 4, 5, 4, 3, 7, 6 };
for (int i = 0; i < arrays.Length - 1; i++)
{
for (int j = 0; j < arrays.Length - i - 1; j++)
{
if (arrays[j] > arrays[j + 1])
{
int temp = arrays[j];
arrays[j] = arrays[j + 1];
arrays[j + 1] = temp;
}
}
}
26.二分法
答: public static int BinarySearch(int[] arr,int value)
{
int low = 0;
int high = arr.Length - 1;
while(low<=high)
{
int middle = (low + high) / 2;
if (value == arr[middle])
{
return middle;
}
else if(value >arr[middle])
{
low = middle + 1;
}
else
{
high = middle - 1;
}
}
return -1;
}
27.int、string、Hashable、DataTable、DateTime中哪些是引用類型?
答:string、Hashtable、DataTable
28.查詢A表中的id字段,若是不足8位,前面補充0。
答:select left(replicate('0',8-len(id)) + ltrim(id),8) from A
29.MVC中有幾種路由?
答:
30.MVC中的過濾器。
答: