- 相關(guān)推薦
ASP.NET專業(yè)面試試題
1、自定義控件如何做?
答:自定義控件,跟HtmlControl或WebControl相似,編譯后可以添加引用到工具欄里
面,直接用鼠標(biāo)拖動(dòng)使用。
2、界面的布局?
答:表格,div
3、程序的執(zhí)行過程
答:先被編譯成中間語言,再翻譯平臺(tái)專用語言
4、如何理解三層架構(gòu)?
答:MVC將程序功能分成三部分考慮:視圖(VIEW,即可見的用戶界面部分)、模型(Model,程序的數(shù)據(jù)模型和業(yè)務(wù)邏輯部分),控制器(Controller,根據(jù)用戶輸入通知模型和視圖進(jìn)行相應(yīng)更改)。
5、驗(yàn)證控件有哪些?具體用法?
a) 答:RequiredFieldValidator(必須字段驗(yàn)證);
b) CompareValidator(比較驗(yàn)證);
c) RangeValidator (范圍驗(yàn)證);
d) RegularExpresionValidator(正則表達(dá)式);
e) ValidationSummary(驗(yàn)證總結(jié));
f) CustomValidator(自定義驗(yàn)證)
7、什么是ERP?ERP的演變過程?
答:所謂ERP是英文Enterprise Resource Planning(企業(yè)資源計(jì)劃)的簡寫。它是從MRP(物料資源
計(jì)劃)發(fā)展而來的新一代集成化管理信息系統(tǒng),它擴(kuò)展了MRP的功能,其核心思想是供應(yīng)鏈管理,它跳
出了傳統(tǒng)企業(yè)邊界,從供應(yīng)鏈范圍去優(yōu)化企業(yè)的資源,是基于網(wǎng)絡(luò)經(jīng)濟(jì)時(shí)代的新一代信息系統(tǒng)。它對
于改善企業(yè)業(yè)務(wù)流程、提高企業(yè)核心競爭力的作用是顯而易見的。
8、Asp和Asp.net的區(qū)別?
答:ASP.Net擺脫了以前ASP使用腳本語言來編程的缺點(diǎn),理論上可以使用任何編程語言包括C++ , VB , JS等等,當(dāng)然,最合適的編程語言還是MS為.Net Frmaework專門推出的C(讀c sharp),它可以看作是VC和Java的混合體吧,盡管MS自己講C#內(nèi)核中更多的象VC,但實(shí)際上我還是認(rèn)為它和Java更象一些吧。首先它是面向?qū)ο蟮木幊陶Z言,而不是一種腳本,所以它具有面向?qū)ο缶幊陶Z言的一切特性,比如封裝性、繼承性、多態(tài)性等等,這就解決了剛才談到的ASP的那些弱點(diǎn)。封裝性使得代碼邏輯清晰,易于管理,并且應(yīng)用到ASP.Net上就可以使業(yè)務(wù)邏輯和Html頁面分離,這樣無論頁面原型如何改變,業(yè)務(wù)邏輯代碼都不必做任何改動(dòng);繼承性和多態(tài)性使得代碼的可重用性大大提高,你可以通過繼承已有的對象最大限度保護(hù)你以前的投資。并且C#和C++、Java一樣提供了完善的調(diào)試/糾錯(cuò)體系。
9、談?wù)劥鎯?chǔ)過程和觸發(fā)器以及他們的區(qū)別和項(xiàng)目的應(yīng)用?
答:存儲(chǔ)過程是 SQL 語句和可選控制流語句的預(yù)編譯集合,以一個(gè)名稱存儲(chǔ)并作為一個(gè)單元處理。存儲(chǔ)過程存儲(chǔ)在數(shù)據(jù)庫內(nèi),可由應(yīng)用程序通過一個(gè)調(diào)用執(zhí)行,而且允許用戶聲明變量、有條件執(zhí)行以及其它強(qiáng)大的編程功能。
觸發(fā)器是一種特殊類型的存儲(chǔ)過程,當(dāng)使用下面的一種或多種數(shù)據(jù)修改操作在指定表中對數(shù)據(jù)進(jìn)行修改時(shí),觸發(fā)器會(huì)生效:UPDATE、INSERT 或 DELETE。觸發(fā)器可以查詢其它表,而且可以包含復(fù)雜的 SQL 語句。它們主要用于強(qiáng)制復(fù)雜的業(yè)務(wù)規(guī)則或要求。例如,可以控制是否允許基于顧客的當(dāng)前帳戶狀態(tài)插入定單。
觸發(fā)器還有助于強(qiáng)制引用完整性,以便在添加、更新或刪除表中的行時(shí)保留表之間已定義的關(guān)系。然而,強(qiáng)制引用完整性的最好方法是在相關(guān)表中定義主鍵和外鍵約束。如果使用數(shù)據(jù)庫關(guān)系圖,則可以在表之間創(chuàng)建關(guān)系以自動(dòng)創(chuàng)建外鍵約束。有關(guān)詳細(xì)信息,請參見表關(guān)系。
觸發(fā)器的優(yōu)點(diǎn)如下:
觸發(fā)器是自動(dòng)的:它們在對表的數(shù)據(jù)作了任何修改(比如手工輸入或者應(yīng)用程序采取的操作)之后立即被激活。
觸發(fā)器可以通過數(shù)據(jù)庫中的相關(guān)表進(jìn)行層疊更改。例如,可以在 titles 表的 title_id 列上寫入一個(gè)刪除觸發(fā)器,以使其它表中的各匹配行采取刪除操作。該觸發(fā)器用 title_id 列作為唯一鍵,在 titleauthor、sales 及 roysched 表中對各匹配行進(jìn)行定位。
觸發(fā)器可以強(qiáng)制限制,這些限制比用 CHECK 約束所定義的更復(fù)雜。與 CHECK 約束不同的是,觸發(fā)器可以引用其它表中的列。
10、ADO.net的七大對象
答:Connection,Command,DataAdapter,DataSet,DataReader,configuration
11、談?wù)剶?shù)據(jù)完整性和C#的安全性
答:所謂數(shù)據(jù)完整性就是指數(shù)據(jù)庫中數(shù)據(jù)的正確性和一致性,利用數(shù)據(jù)的完整性約束,可以保證數(shù)據(jù)庫中數(shù)據(jù)的質(zhì)量。因此,在進(jìn)行表的設(shè)計(jì)時(shí),一定要注意到對數(shù)據(jù)完整性的設(shè)計(jì)。類型有:實(shí)體完整性,域完整性,引用完整性,用戶定義完整性。
安全是每個(gè) C# 應(yīng)用程序的一個(gè)非常重要的方面,在每個(gè)開發(fā)階段都必須考慮:而不僅僅是在完成設(shè)計(jì)和實(shí)現(xiàn)后才需要考慮。
a) 使用 checked 關(guān)鍵字控制整型算術(shù)運(yùn)算和轉(zhuǎn)換的溢出檢查上下文。
b) 始終對參數(shù)使用最嚴(yán)格的數(shù)據(jù)類型。例如,在將一個(gè)值傳入描述數(shù)據(jù)結(jié)構(gòu)大小的方法時(shí),應(yīng)使用無符號(hào)整數(shù)而不是整數(shù)。
c) 不要根據(jù)文件名作出決定。文件名可以用多種不同的方式表示,因而檢測是否有特定文件時(shí)可能會(huì)跳過該文件。
d) 千萬不要將密碼或其他敏感信息硬編碼到應(yīng)用程序中。
e) 始終驗(yàn)證用于生成 SQL 查詢的輸入。
f) 驗(yàn)證傳入方法的所有輸入。System.Text.RegularExpressions 命名空間中的正則表達(dá)式方法對于確認(rèn)輸入(如電子郵件地址)的格式是否正確很有用。
g) 不要顯示異常信息:它會(huì)給任何潛在的攻擊者提供有價(jià)值的線索。
h) 確保應(yīng)用程序在最低的可能特權(quán)下運(yùn)行時(shí)能夠正常工作。少數(shù)應(yīng)用程序要求用戶作為管理員登錄
i) 不要使用自己的加密算法,應(yīng)使用 System.Security.Cryptography 類。
j) 為程序集指定強(qiáng)名稱。
k) 不要在 XML 或其他配置文件中存儲(chǔ)敏感信息。
l) 仔細(xì)檢查包裝本機(jī)代碼的托管代碼。確保本機(jī)代碼是安全的,尤其是在防止緩沖區(qū)溢出方面。
m) 在使用從應(yīng)用程序之外傳入的委托時(shí)應(yīng)保持謹(jǐn)慎。
n) 對程序集運(yùn)行 FxCop 以確保符合 Microsoft .NET Framework 設(shè)計(jì)準(zhǔn)則。FxCop 還可以查找 200 多種代碼缺陷并針對這些代碼缺陷發(fā)出警告。
【ASP.NET專業(yè)面試試題】相關(guān)文章:
SOA專業(yè)面試試題02-07
社工面試面試試題及答案08-04
樂事面試題11-05
硅谷面試題精選02-03
金山的面試題目04-13
那些最經(jīng)典的面試題08-20
面試試題設(shè)計(jì)原則08-18
護(hù)士面試的面試試題及參考答案07-03
德國公司經(jīng)典面試題11-10
針對銷售壓力的面試試題03-28