Asp.net基礎知識

1、.NET是什么?

.Net全稱.NET Framework是一個開發和運行環境,

該戰略是微軟的一項全新創意,

它將使得“互聯網行業進入一個更先進的階段,

.NET不是一種編程語言. 簡單說就是一組類庫框架,

.NET開發支持C#、VB.NET、J#、Jsript和Managed C++等。

C#是.NET Framework框架支持的一種主力開發語言,

可用于開發ASP.NET網站, Windows 程序,控制臺程序,甚至于手機軟件,

至此51Aspx作為微軟的合作伙伴特提供了各種類型的源碼下載:

http://51Aspx.com/

2、ASP.NET、.NET和C#的關系是怎樣的?

.NET 分成兩個方面:

(1)WinForm

(2)WebForm

ASP.NET就是屬于WebForm,也就是平時說的B/S模式的開發。

而WinForm就是屬于C/S模式。

.NET有很多種語言組成,比如C#、 VB.NET、J#、Jsript、Managed C++

但是都是運行在.NET FrameWork Run Time底下的。

Asp.NET 可以用C#或VB.NET來開發。

編譯后形成CLR,通過服務器的IIS+.NET FrameWork再次編譯來運行。

C#是開發語言.

總之,ASP.NET是.NET Framework環境下的動態網頁編程技術,

.NET Framework是.NET的基礎框架,

Visual Studio.NET是用于開發軟件的一個集成環境(IDE)。

當然后續出來了Windows Phone/WPF等。

3、.NET開發是用什么語言?

.NET聲稱支持市面上20多種語言,

但目前只有微軟官方發布的C#,VB.NET,J#, Jsript和Managed C++

Tips:C#是主流哦。

4、為什么大部分用C#語言開發.NET?

C#是Microsoft公司設計的一種編程語言,

C#(讀做‘Csharp’)。它基于C/C++,是面向對象的。

沒有指針,有垃圾回收機制,會自動釋放內存空間。

學習C#并不必須有C語言的基礎,不過,如果你學過C語言,

那會事半功倍的,因為他們之間有很多語法是一樣的。

C#支持的基本類型和C++很相似,包括int, long,

float, double, char, string, arrays, structs和 classes等。

為此51Aspx:http://51Aspx.com/提供了以C#語言為主的源碼下載。

5、ASP.NET環境的安裝

(1)、其實現在一般的電腦都可以安裝,至于操作系統目前

.NET支持的平臺有Windows,至于Linux和Unix的支持正在開發中.

(2)、運行環境下載,因為是向下兼容,所以可以下載最新的Framework框架

.NET Framework 3.5下載地址:

https://www.microsoft.com/zh-cn/download/details.aspx?id=21

.NET Framework 4.0下載地址:

https://www.microsoft.com/zh-cn/download/details.aspx?id=17718

.NET Framework 4.5下載地址:

https://www.microsoft.com/zh-cn/download/details.aspx?id=30653

.NET Framework 4.6.2下載地址:

https://www.microsoft.com/zh-cn/download/details.aspx?id=53345

(3)、安裝過程

首選安裝MDAC,再安裝SDK,SDK的安裝時間比較長要耐心等待。

(4)、試運行

安裝完成后,試著運行一個簡單的ASP.NET編寫的小程序,以便確定安裝是否成功。

6、Bin文件夾下的DLL可以做什么?

(1)它是自動生成的,不用自己添加。

(2)作用:bin文件夾中包含項目中所用到的所有引用的類庫,支持服務器等內容DLL的全稱是Dynamic Link Library, 中文叫做“動態鏈接文件”。

7、.NET主要的優點有哪些?

.NET的主要優點有跨語言,跨平臺,安全,以及對開放互聯網標準和協議的支持.

.NET支持多種語言的互操作,即在一種語言下開發的組件,

可在另一組件下通過面向對象的繼承而得以重用.

.NET通過將各語言先編譯成中間語言(IL),

然后再執行時用即時(Just In Time)編譯器將之編譯成本地平臺代碼來實現異構平臺下對象的互操作,

.NET通過公共語言運行庫CLR(Common Language Runtime)來實現資源對象,類型的安全.

.NET通過對HTTP,XML等Internet標準的支持提供在異構網絡環境下獲取遠程服務,

連接遠程設備,交互遠程應用的編程界面

8、ASP.NET和ASP的區別?

ASP.NET和ASP的最大區別在于編程思維的轉換以及功能的增強。

ASP使用VB/JS這樣的弱類型、面向結構的腳本語言混合html來編程,

而非面向對象,這就明顯產生以下幾個問題:

1、代碼邏輯混亂,難于管理。

2、代碼的可重用性差:由于是面向結構的編程方式,并且混合html,

所以可能頁面原型修改一點,整個程序都需要修改,代碼重用性差。

3、弱類型造成潛在的出錯可能。

以上是ASP語言本身的弱點,在功能方面ASP同樣存在問題:

第一是功能太弱,一些底層操作只能通過組件來完成

第二缺乏完善的糾錯/調試功能

ASP.NET理論上可以使用任何編程語言包括C#,VB.NET、JS、、J#、Managed C++等等,

最合適的編程語言還是MS為.NET Frmaework專門推出的C#

優點如下:

(1)是面向對象的編程語言,簡單易學。

(2)具有面向對象編程語言的一切特性,比如封裝性、繼承性、多態性等等,

封裝性使得代碼邏輯清晰,并且應用到ASP.NET上就可以使業務邏輯和Html頁面分離;

繼承性和多態性使得代碼的可重用性大大提高

(3)C#還提供了完善的調試/糾錯體系。

9、做項目時數據庫類型的選擇?

當前流行的數據庫有:Sql server,MySql,Oracle,DB2。

VS項目中大多是選擇以下四種:

Sql2000簡單實用,功能完全夠學習時使用,可通過命令行快速打開;

Sql2005功能全面,但安裝麻煩,體積大,剛打開數據庫的時候比較慢,啟動之后就快了許多;

Sql2008新出的數據庫,功能肯定比前兩者強大,建議使用Sql2005的用戶升級 到Sql2008;

ACCESS體積小、部署方便(不用啟動服務等)使用方便簡單.

10、ASP.NET中經常使用的控件有哪些?

Label控件用來顯示文本的控件。Label控件不能接收鼠標或是鍵盤輸入。

TextBox控件來顯示和更新任務數據,用戶輸入內容。

Button按鈕控件當用戶單擊或者點擊一個按鈕時,即會觸發Click事件

ListBox和ComboBox控件外觀不同,但功能極為相似,允許用戶進行選擇,不允許輸入文本。

11、.net開發工具都有哪些?

現在主流是Visual Studio 2012/2013/2014/2015,

VS提供了下列幾個版本:標準版、專業版、Tools for Office 和 Team System 版。

還有C# builder只應用于大型企業開發,

支持一些微軟的vs.net都不支持的企業級功能。

還有一款免費的開發工具web matrix,這款自動感知能力弱到幾乎沒有,

適合開發頁面和代碼不分開的那種頁面,可以提高獨立寫代碼的水平。

不過他帶有.net類庫瀏覽器,以及一個數據庫開發的控件,也算是有些特點。

入門初學者VS.NET會很容易上手,

當然,還有就是高手只用記事本咯!

12、為什么.NET程序第一次運行比較慢?

aspx頁面在運行時,第一次訪問時要進行編譯。

當你再次運行時,由于緩存機制,速度就會正常了。

13、C#的命名規范

主要有Pascal和Camel兩種

Pascal:單詞的首字母大寫,如ProductType;

Camel:首個單詞的首字母小寫,其余單詞的首字母大寫,如productType)

以下是一些常用的C#成員及其推薦命名方法:

類class:Pascal

枚舉類型enum:Pascal記住,是以Pascal命名,切勿包含Enum

委托delegate:Pascal以Pascal命名,不以任何特殊字符串區別于類名、函數名

接口interface:Pascal注:總是以"I"前綴開始,后接Pascal命名

方法function: Pascal

命名空間namespace: Pascal比如:usingExcelQuicker.Framework

屬性:Pascal

參數:Camel 首字母小寫

常量const: Camel 字母全部大寫

局部變量:Camel 聲明變量是以str開頭

數據成員:Camel 以m開頭+Pascal命名規則,如mProductType(m意味member)

14、如何判斷一個程序是否開源或者是有源文件?

都有對應的.CS文或VB文件

有項目文件和解決方案文件

BIN文件下所有的dll文件或是引用的組件有對應的源碼

15、如何判51Aspx源碼開源度?

在每個源碼下載頁面上都標有相關的開源度標志,

一般情況下是開源的,不過也有個別的情況,請各位諒解。

快乐十分天津