2014-02-19 34 views
0

我有編寫代碼的經驗......但是對於開發web應用程序來說是新的。在ASP.NET MVC中使用小部件(或可重用組件)開發web應用程序

我正在爲我的項目選擇框架。基於我最初的研究,幾乎所有事情都是以VIEW爲中心的,畢竟業務邏輯已經被執行了,模型被填充數據並傳遞給VIEW。

所以粒度的最低級別是VIEW。

但我想知道如果我想開發可重用的小部件或控件,使用哪種正確的技術。然後在多個VIEWS中重用它們。

我寧願如果控件是在JavaScript中,然後他們可以很容易地重用跨頁面。 (所以沒有asp.net服務器控件或Web表單)。

因此,如果我要選擇ASP.NET MVC 4 ...它有什麼可以幫助我在可重用的小部件中編寫代碼......或者它是否會要求我編寫與由該模型?

很抱歉,如果這是新手的問題

對我說的一個小部件eloborate。

假設我正在撰寫論壇Web應用程序。我想寫一個名爲post的widget,它有3個視圖。視圖1是編輯模式。視圖2是摘要模式。視圖3是細節模式。

我在一個名爲QuestionStream的頁面中拋出這個小部件,在這個頁面中,小部件出現在摘要視圖中。我執行數據綁定,以便獲得問題列表。

我把這個小部件放在一個叫做ThreadView的頁面中,在這個頁面中,小部件出現在詳細視圖中。我執行數據綁定並獲取問題的所有細節。

我在一個名爲NewQuestion的頁面中放入這個小部件,在這個頁面中,小部件出現在編輯視圖中。

因此,它是一個自包含的控制...但可以在不同模式(可以這麼說)在多個地方重複使用。

+0

這是可能的,然後是的。 –

+0

您正在尋找部分。 – mxmissile

回答

1

這裏是關於如何在MVC中創建可重用組件/頁面/小部件的摘要列表。還有更多的方法,這些僅僅是一些例子,可以讓你從什麼時候開始尋找或如何製作。

1.通常用於打破大視圖,爲更小的觀點,然後在運行時組合

  • 視圖爲中心的方法的局部視圖

    • ,控制器可以選擇一個視圖生成。
    • Tutorial

    2.渲染動作/渲染部分

    • 直接在視圖頁面調用的子ActionMethod作爲內嵌 表達。
    • 用於需要業務邏輯的部分視圖。

    3.自定義DisplayFor/EditorFor模板

    • 模型爲中心,這意味着它們採取模型元數據(屬性/註解)。
    • Cool tutorial

    4.自定義HTML助手

    • 「通常用於生成HTML樣板」LINK

    以下鏈接展示瞭如何創建頁面MVC中的「小部件」。作者沒有提到「小工具」,但它與您正在尋找的相同。

    http://www.mikesdotnetting.com/Article/105/ASP.NET-MVC-Partial-Views-and-Strongly-Typed-Custom-ViewModels

    基於提到的教程,下面是它應該是什麼樣子的圖像(注意「最受歡迎」部分,該小工具是完全可重複使用的所有頁)

    enter image description here

  • +0

    非常感謝您的回覆。我非常感謝你的幫助! –

    0

    ASP.NET MVC 4有能力編寫可重用的方法。視圖以標記(通常)表示,並將調用Controller的方法來填充視圖。老實說,儘管你問的是一個非常簡單的問題,但我認爲你試圖獲得的是可重用性。您列出的所有技術:服務器控件,Web表單和mvc4都具有該功能。這一切都取決於你想要做什麼。

    +0

    我沒有在ASP.NET MVC中找到任何允許我編寫自包含小部件的內容。可以跨頁面重複使用。你能指點我一個教程或代碼,它展示瞭如何編寫一個小部件,然後在多個頁面上重複使用。 –

    +0

    我真的不知道你是什麼意思的術語「小工具」。 Web部件可能是一個很接近的東西(http://msdn.microsoft.com/en-us/library/e0s9t4ck.aspx),但我仍然不確定你真正想問什麼。大多數.NET代碼可以在頁面和系統中重複使用。控制檯應用程序,Web應用程序等等。 –

    +0

    我不想使用網頁表單。我知道他們有服務器控制。但我不希望viewstate,我希望客戶端側重點。有人指出我的幫手方法http://forums.asp.net/t/1969367.aspx?Coming+back+to+web+development+after+a+long+time,但他們不像自包含的小部件。 –

    相關問題