2017-02-04 19 views
5

में रेजर व्यू से यूआरएल में आईडी का मूल्य कैसे प्राप्त करें मेरे पास http://localhost:5050/Posts/Create/3 जैसे पृष्ठ के साथ एक साधारण एएसपी.NET कोर वेब एप्लिकेशन है।एएसपी.NET कोर

मेरे रेजर व्यू Views/Posts/Create.cshtml में, मैं मूल्य "3" कैसे प्राप्त कर पाऊंगा ताकि मैं <a href="/Blogs/Details/3">« Back to Blog</a> जैसे लिंक बना सकूं?

अब तक, लिंक का पालन टैग सहायक का उपयोग बनाया है, लेकिन मैं नहीं जानता कि क्या asp-route-id के लिए डाल करने के लिए:

<a asp-controller="Blogs" asp-action="Details" asp-route-id="" class="btn btn-default btn pull-right">&laquo; Back</a> 

मैं बस डिफ़ॉल्ट MVC मार्ग का उपयोग कर रहा:

app.UseMvc(routes => 
{ 
    routes.MapRoute(
     name: "default", 
     template: "{controller=Home}/{action=Index}/{id?}"); 
}); 

मुझे पता है कि मैं इसे मॉडल से प्राप्त कर सकता हूं (यानी, Model.Blog.BlogId), लेकिन में Request.Query["id"] जैसे कुछ का उपयोग करके मैं इसे यूआरएल से प्राप्त करना चाहता हूं।

मैंने asp-route-id="@Context.Request.Query["id"] की कोशिश की।

उत्तर

7

कुछ ऐसा Context.GetRouteData().Values["id"];?

इसके अलावा http://www.blakepell.com/how-to-get-the-current-route-in-a-view-with-asp-net-5-mvc-6

+0

हाँ, यह नहीं asp.net कोर के लिए है। एएसपीनेट कोर में कोई 'RequestContext' नहीं है। – kimbaudi

+0

पहली पंक्ति एएसपीनेट कोर है, जो मेरी प्रोजेक्ट से चिपकाई गई है, लेकिन संभवतः आप जितनी चाहें उतनी उपयोगी नहीं है। अंतिम लिंक के बारे में क्या? मैंने कोशिश नहीं की है लेकिन यह एमवीसी 6 होना चाहिए। – Daboul

+0

अरे, मैंने अभी 'Context.GetRouteData() मूल्यों की कोशिश की है। ["Id"]' और यह काम करता है। क्या आप अपना जवाब संपादित कर सकते हैं? मैं इसे सही समाधान के रूप में चिह्नित करूंगा। – kimbaudi