खोज…


परिचय

T4MVC एक T4 टेम्प्लेट है जो MVC रूटिंग तंत्र में उपयोग के लिए दृढ़ता से टाइप किए गए हेल्पर्स को उत्पन्न करता है, जैसा कि मैजिकिंग रिंगिंग के विपरीत है। T4MVC विभिन्न नियंत्रकों, क्रियाओं और विचारों का पता लगाएगा, और उन दृश्यों के संदर्भ बनाएगा, जो उस घटना में संकलन-समय की त्रुटियां बना रहे हैं जो किसी दृश्य को रूट या एक्सेस करने का प्रयास अमान्य है।

कॉलिंग एक्शन

एमवीसी में, कुछ विज्ञान हैं जहां आप रूटिंग उद्देश्यों के लिए एक क्रिया निर्दिष्ट करना चाहते हैं, या तो लिंक के लिए, प्रपत्र कार्रवाई के लिए, या कार्रवाई के लिए पुनर्निर्देशित करते हैं। आप MVC नाम स्थान के माध्यम से एक क्रिया निर्दिष्ट कर सकते हैं।

जब एक नियंत्रक दिया जाता है, जैसे HomeController :

public class HomeController : Controller
{
    public ActionResult Index()
    {
        ...
    }
    public ActionResult MyAction()
    {
        ...
    }
    public ActionResult MyActionWithParameter(int parameter)
    {
        ...
    }
}

T4MVC एक अंतर्निहित नियंत्रक उत्पन्न करेगा जो कार्रवाई को ओवरराइड करता है। यह ओवरराइड मार्ग डेटा को ठीक से सेट करेगा ताकि एमवीसी के UrlHelper उचित UrlHelper उत्पन्न करेगा। आप इस विधि को कॉल कर सकते हैं और इसे UrlHelper लिए विभिन्न तरीकों से पास कर सकते हैं। डिफ़ॉल्ट MVC मार्ग का उपयोग करने के लिए नीचे दिए गए उदाहरणों का उपयोग किया जा रहा है:

संपर्क

निर्दिष्ट पाठ के साथ a टैग उत्पन्न करने के लिए:

@Html.ActionLink("Link Text", MVC.Home.Index() )
//result: <a href="/">Link Text</a>
@Html.ActionLink("Link Text", MVC.Home.MyAction() )
//result: <a href="/Home/MyAction">Link Text</a>
//T4MVC also allows you to specify the parameter without creating an anonymous object:
@Html.ActionLink("Link Text", MVC.Home.MyActionWithParameter(1) )
//result: <a href="/Home/MyActionWithParameter/1">Link Text</a>

एक url उत्पन्न करने के लिए:

@Url.Action( MVC.Home.Index() )
//result: /
@Url.Action("Link Text", MVC.Home.MyAction() )
//result: /Home/MyAction
@Url.Action("Link Text", MVC.Home.MyActionWithParameter(1) )
//result: /Home/MyActionWithParameter/1

सूचना है कि T4MVC MVC रूटिंग के रूप में ही नियमों का पालन करती है - यह डिफ़ॉल्ट मार्ग चर निर्दिष्ट नहीं होगा, इसलिए कि Index पर कार्रवाई HomeController उत्पन्न नहीं करता है /Home/Index लेकिन बजाय पूरी तरह से वैध और संक्षिप्त रूप /

प्रपत्र विधि

सही action साथ एक form टैग उत्पन्न करने के लिए:

@Html.BeginForm( MVC.Home.Index(), FormMethod.Get /* or FormMethod.Post */ )
{
    //my form
}
//result:
<form action="/" method="GET">
    //my form
</form>
@Html.BeginForm( MVC.Home.MyActionWithParameter(1), FormMethod.Get /* or FormMethod.Post */ )
{
    //my form
}
//result:
<form action="/Home/MyActionWithParameter/1" method="GET">
    //my form
</form>

कार्रवाई करने के लिए पुनर्निर्देशित करें

जब एक नियंत्रक में, आप वर्तमान कार्रवाई से किसी कार्रवाई को पुनर्निर्देशित करना चाह सकते हैं। यह किया जा सकता है, पसंद:

public class RedirectingController : Controller
{
    public ActionResult MyRedirectAction()
    {
        ...
        return RedirectToAction( MVC.Redirecting.ActionToRedirectTo() );
        //redirects the user to the action below.
    }
    public ActionResult ActionToRedirectTo()
    {
        ...
    }
}


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow