ASP.NET এমভিসি নিয়ামকের কাছে অ্যাকশন লিঙ্কে একটি আইডি পাস করছে


100

আমি এইচটিএমএল প্রেরণ করছি এমন একটি আইডি পুনরুদ্ধার করতে দেখতে পাচ্ছি না আমার কন্ট্রোলারে অ্যাকশনলিঙ্ক, আমি যা করতে চাইছি তা এখানে

<li>
    <%= Html.ActionLink("Modify Villa", "Modify", "Villa", new { @id = "1" })%></li>


    public ActionResult Modify(string ID)
    {

        ViewData["Title"] =ID;
        return View();
    }

এই যে আমি টিউটোরিয়ালটি অনুসরণ করেছি সেটাই প্রস্তাবিত হয়েছিল, তবে এটি কাজ করছে না, এটিও রাখছে? URL এর শেষে দৈর্ঘ্য = 5!

আগাম ধন্যবাদ!

সম্পাদনা করুন: আমি যে রুটটি ব্যবহার করছি এটি এখানে ডিফল্ট

        routes.MapRoute(
            "Default",                                              // Route name
            "{controller}/{action}/{id}",                           // URL with parameters
            new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
        );

এটি প্রদর্শিত হয় যে কেউ নীচে দুটি পরামর্শকে বাদ দিয়েছেন তবে তাদের সমাধান পোস্ট করেন নি!

উত্তর:


205

দেখে মনে হচ্ছে না আপনি অ্যাকশনলিঙ্কের সঠিক ওভারলোডটি ব্যবহার করছেন। এটা চেষ্টা কর:-

<%=Html.ActionLink("Modify Villa", "Modify", new {id = "1"})%>

এটি ধরে নিয়েছে আপনার ভিউ / ভিউ / ভিলা ফোল্ডারের অধীনে। তা না হলে আমার সন্দেহ হয় আপনার প্রয়োজন: -

<%=Html.ActionLink("Modify Villa", "Modify", "Villa", new {id = "1"}, null)%>

5
ভাল কল - সমস্যা ছিল যে ফাংশনটির প্রথম ওভারলোডটি "এইচটিএমএলএ্যাট্রিবিউটস" কে চতুর্থ প্যারামিটার হিসাবে নিয়েছিল। সুতরাং ", নাল" যুক্ত করা সংকলকটিকে রুট পরামিতি হিসাবে আপনার ইনলাইন অবজেক্টটি ব্যবহার করতে বাধ্য করেছিল।
টিমোথি খৌরি

28

এমভিসি 4 এ আপনি আইডির মাধ্যমে বা প্রাথমিক কী পাস করে এক ভিউ থেকে অন্য নিয়ামকের সাথে লিঙ্ক করতে পারেন

@Html.ActionLink("Select", "Create", "StudentApplication", new { id=item.PersonId }, null) 

14

@ আইডির আগে রাখবেন না

new { id = "1" }

প্যারামিটার / রুটে কোনও অমিল থাকলে দৈর্ঘ্যটি এটি "অনুবাদ করে"? দৈর্ঘ্যটি


6

এমভিসি 5 তেও বেশ অনুরূপ

@Html.ActionLink("LinkText", "ActionName", new { id = "id" })

2

আইডিটি @সামনে সাইন ইন করেও কাজ করবে , তবে এর পরে আমাদের একটি পরামিতি যুক্ত করতে হবে। এটাইnull

মত চেহারা:

@Html.ActionLink("Label Name", "Name_Of_Page_To_Redirect", "Controller", new {@id="Id_Value"}, null)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.