mvc 控制器controller:響應用戶請求,並修改模型model;輸入數據的處理,輸出view數據的提供;html
url入控制器的方法有關聯;MVC提供的是方法調用結果;jquery
mvc model:是對應用狀態和業務功能的封裝,接受controller 的請求並完成相應的業務處理,在狀態改變時通知VIEW。web
MVC視圖:向用戶提供用戶界面。面試
1〉檢查控制器提供的模型對象;數據庫
2〉將內容轉換爲HTML格式。(也能夠轉換成其餘格式的內容)設計模式
視圖的方法:@ViewBag.Message瀏覽器
ViewBag是ViewData的動態封裝類,ViewData["currenttime"]等同於ViewBga.currenttime緩存
ViewData["currenttime"]=DateTime.Now安全
ViewBga.currenttime=DateTime.Now服務器
var albums=new List<Album>();
albums.add(new Albums{Title="Product"+i});
_viewstart.cshtml,第一個運行的視圖;
部分視圖:不能指定視圖;
視圖:獲取控制器傳遞的數據,並生成格式化的輸出,一般是HTML格式;
瀏覽器不能直接指向視圖;視圖自己不會被直接訪問;視圖被控制器渲染,控制器提供視圖渲染的數據;
Razor 語法:
razor:<span>@model.message</span>
web forms:<span><%:model.message%></span>
razor:<span>ISBN@(isbn)</span>
web forms:<span>ISBN<%:isbn %></span>
razor:<span>@Html.Raw(model.message)</span>
web forms:<span>Html.Raw<model.message></span>
razor:@{
int x =123;
}
webforms:<%
int x =123;
%>
文本和標記相結合:
<span>itme@item.name</span>
轉以代碼:razor:@@
註釋:razor:@*abc *@
webforms:<%-- abc --%>
調用方法:razor:@(html.method())
webforms:<%: html.method()%>
初級:
中級:
高級:
先讓面試者介紹一下項目經驗,從他項目裏面的實際技術入手開始問起。
好比說在http://ASP.NET項目裏用過jquery,那就問一下jquery跟http://asp.net結合使用的一些技巧,什麼邏輯放到jquery裏,什麼邏輯放到http://ASP.NET裏。
好比說用過http://ASP.NET MVC,那就問問MVC的實現原理方面的問題。好比說用過WPF,那就問問雙向數據更新的實現方面的問題。