Net學習日記_ASP.Net_MVC_HtmlHelper_筆記

1、HtmlHepler

1.ActionLink() 

動態生成 超連接:根據路由規則,生成對應的 html 代碼。html

//1.註冊路由信息
routes.MapRoute(
    name: "Default",
    url: "{controller}_aa/{action}.html/{id}",
    defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

//2.在試圖上建立 超連接
<a href="/Home/Heaven">去天堂</a><br />
@Html.ActionLink("去天堂吧","heaven", "Home")

//3.在瀏覽器看到的生成結果
<a href="/Home/Heaven">去天堂</a><br />
<a href="/Home_aa/heaven.html">去天堂吧</a>

 

2.BeginForm()

//1.在視圖中 建立 表單
@using (Html.BeginForm("add", "home", FormMethod.Post, new { id="form1" }))
{ 
}
//2.生成的html代碼
<form action="/home/add.html" id="form1" method="post">        文章標題:
</form>

補充:瀏覽器

//直接 在視圖中 @ 調用有返回值的方法,就已經至關因而將返回值 寫入 Response了
@Html.Label("ATitle")
//至關於下面代碼
@{
    Response.Write(Html.Label("ATitle"));
}

 

3.Lable()等生成 html 標籤方法

 注:全部的方法 都默認 去 視圖的 Model 屬性所儲存的對象 中 查找匹配屬性post

//1.爲實體類 添加 特性 DisplayName
public partial class BlogArticle
{
    [DisplayName("文章標題")]
    public string ATitle { get; set; }
}

//2.在Action方法中,爲視圖 的 Model 設置值
public ActionResult Add()
{
    return View(new Models.BlogArticle() { ATitle="哇哈哈哈~~!" });
}

//3.在視圖中,經過 html的幫助方法,生成 html 標籤,同時指定,要讀取的 屬性名
@Html.Label("Atitle")

//4.生成對應的 html標籤,並自動讀取了 對應屬性 的 DisplayName 裏的文本。
<label for="Atitle">文章標題</label>

 

 

4.強類型的Html標籤方法url

強類型方法,直接 經過 lambda表達式,去試圖的 Model屬性對象中 查找對應的屬性數據spa

4.1普通強類型方法(經過不一樣方法生成不一樣html標籤)code

//1.視圖上調用方法
@Html.TextBoxFor(a=> a.ATitle)
//2.生成的html代碼
<input class="text-box single-line" id="ATitle" name="ATitle" type="text" value="哇哈哈哈~~!"/>

 

4.2超強強類型方法(經過 屬性的 DataType特性生成html標籤)orm

//1.在實體類中 爲 AContent 屬性設置 DataType特性,指定爲 多行文本框
public partial class BlogArticle
{
    [DataType(System.ComponentModel.DataAnnotations.DataType.MultilineText)]
public string AContent { get; set; }
}
//2.視圖上 自動根據model對象裏屬性保存的 實體類 屬性 的 [DataType] 特性裏指定的類型生成對應的html標籤
@Html.EditorFor(a=> a.ATitle)
//3.生成html代碼
<textarea class="text-box multi-line" id="AContent" name="AContent"></textarea>
相關文章
相關標籤/搜索