1. 程式人生 > >整理統計大多數企業初中級C#.net面試題(個人整理)

整理統計大多數企業初中級C#.net面試題(個人整理)

1.“HTML.TextBox” 和 “HTML.TextBoxFor”有什麼不同?

它們兩個輸出相同的HTML, “HTML.TextBoxFor”是強型別的,但“HTML.TextBox”不是。下面是一個例項,
它僅僅建立了一個名字為“CustomerCode”的輸入框。

2.如何限制一個動作的型別為GET或POST?

[HttpGet]  //方法名上面加上httpget或者httppost
public ViewResult DisplayCustomer(int id)
{
    Customer objCustomer = Customers[id];
    return
View("DisplayCustomer",objCustomer); }

3.在MVC中如何保持Sessions?
三種方式保持: tempdata, viewdata, 和viewbag

PS:儘可能去多瞭解一下這三個tempdata,viewdata,viewbag的意思

4.EF中對於資料庫中表為什麼要設定主鍵?如果不設定會有什麼影響?

     好處:確保資料的唯一性,對查詢檢索有一定的好處
     不好處: 可能會導致資料重複等等..  

5.實現多型的過程中 overload 過載 與override 重寫的區別?

override 重寫與 overload
過載的區別——過載是方法的名稱相同。引數或引數型別不同,進行多次過載以適應不同的需要 Override 是進行基類中函式的重寫。實現多型。

6.請程式設計實現一個氣泡排序演算法?

int[] array=new int[*];

int temp=0;

for(int i=0;i<array.length-1;i++)

{

for(int j=i+1;j<array.length;i++)

        {

if(array[j]<array[i])

             {

temp=array[i];

array[i]=array[j];

array
[j]=temp; } } }

7、什麼是裝箱和拆箱?

裝箱就是隱式的將一個值型轉換為引用型物件。
拆箱就是將一個引用型物件轉換成任意值型。
比如:
int i=0;
Syste.Object obj=i;
這個過程就是裝箱!就是將 i 裝箱!

比如:
int i=0;
System.Object obj=i;
int j=(int)obj;
這個過程前2句是將 i 裝箱,後一句是將 obj 拆箱!

8、ADO.net中常用的物件有哪些?分別描述一下

DataSet:資料集。

DataCommand:執行語句命令。

DataAdapter:資料的集合,用語填充。

DataReader:資料只讀器

Connection 資料庫連線對像

Command 資料庫命令

10、請詳述在C#中類(class)與結構(struct)的異同?

class可以被例項化,屬於引用型別,class可以實現介面和單繼承其他類,還可以作為基型別,是分配在記憶體的堆上的
struct屬於值型別,不能作為基型別,但是可以實現介面,是分配在記憶體的棧上的.

11.DataReader與Dataset有什麼區別?

DataReader和DataSet最大的區別在於,DataReader使用時始終佔用SqlConnection,線上操作資料庫.任何對SqlConnection的
操作都會引發DataReader的異常.因為DataReader每次只在記憶體中載入一條資料,所以佔用的記憶體是很小的..因為DataReader的特
殊性和高效能.所以DataReader是隻進的.你讀了第一條後就不能再去讀取第一條了. DataSet則是將資料一次性載入在記憶體中.拋棄數
據庫連線.讀取完畢即放棄資料庫連線.因為DataSet將資料全部載入在記憶體中.所以比較消耗記憶體.但是確比DataReader要靈活.可以動
態的新增行,列,資料.對資料庫進行回傳更新操作

11.在c#中using和new這兩個關鍵字有什麼意義,請寫出你所知道的意義?using 指令和語句 new 建立例項 new 隱藏基類中方法。

using 引入名稱空間或者使用非託管資源,使用完物件後自動執行實現了IDisposable介面的類的Dispose方法
 new 新建例項或者隱藏父類方法

12.大概描述一下ASP.NET伺服器控制元件的生命週期?

初始化  載入檢視狀態  處理回發資料  載入  傳送回發更改通知  處理回發事件  預呈現  儲存狀態  呈現  處置  解除安裝

13.在C#中,string str = null與string str = “”的區別

string str = null是不給他分配記憶體空間,而string str = ""給它分配長度為空字串的記憶體空

14.怎樣理解靜態變數?靜態成員和非靜態成員的區別?

靜態變數屬於類,而不屬於物件;並對所有物件所享;靜態成員在加類的時候就被載入。

15,介面和類有什麼異同。

不同點:

1、不能直接例項化介面。

2、介面只包含方法或屬性的宣告,不包含方法的實現。

3、介面可以多繼承,類只能單繼承。

4、類有分部類的概念,定義可在不同的原始檔之間進行拆分。

5、表達的含義不同,介面主要定義一種規範,統一呼叫方法,也就是規範類,約束類,類是方法功能的實現和集合

相同點:

1、介面、類和結構都可以從多個介面繼承。

2、介面類似於抽象基類:繼承介面的任何非抽象型別都必須實現介面的所有成員。

3、介面和類都可以包含事件、索引器、方法和屬性。

16.在9個點上畫10條直線,要求每條直線上至少有三個點?
eg:
這裡寫圖片描述
17,如何處理幾十萬條併發資料?

用儲存過程或事務。取得最大標識的時候同時更新..注意主鍵不是自增量方式這種方法併發的時候是不會有重複主鍵的
取得最大標識要有一個儲存過程來獲取.

18,&和&&的區別。

&是位運算子,表示按位與運算,&&是邏輯運算子,表示邏輯與(and

19,求以下表達式的值,寫出您想到的一種或幾種實現方法:1-2+3-4+……+m

int Num = this.TextBox1.Text.ToString() ;
  int Sum = 0 ;
  for (int i = 0 ; i < Num + 1 ; i++)
  {
    if((i%2) == 1)
    {
      Sum += i ;
    }
    else
    {
      Sum = Sum - I ;
    }
  }
  System.Console.WriteLine(Sum.ToString());
  System.Console.ReadLine() ;

20,關於ref和out的描述

使用ref引數,傳遞到ref引數的引數必須最先初始化。
使用ref引數,必須將引數作為ref引數顯式傳遞到方法。

問到的面試題繼續整理中…
把面試題了解找到了工作別忘了要踏踏實實的工作!