ile birden çok parametre (bazı karmaşık nesneler) nasıl iletilir. MVC in .net 4.0 ile çalışıyorum. Temel bir Html.ActionLink'im var ve denetleyiciye/eyleme birden çok parametre iletmek istiyorum.Html.ActionLink
Her ActionScript hata ayıkladığımda parametrelerimden yalnızca bir tanesi gelir ve diğeri null (hangisinin ilk olduğuna bağlı olarak). Artık, “Lig” nesnesinin gelmesini sağlayabildiğimden beri karmaşık nesneleri geçebileceğimi biliyorum. Ancak, parametrelerimden yalnızca birisinin neden herhangi bir zamanda yaptığını bilmiyorum.
ViewKodu: (ViewBag hakkında bana rahatsız etmeyin ben popüler olmadığını biliyorum Ayrıca Lig karmaşık bir nesnedir..) Kontrolör içinde
@Html.ActionLink("Sort By WeeK", "Sort", "Schedule",
new { league = ViewBag.League, sortType = "Week" }, null)
Kodu: (burada hiçbir sürpriz)
public ActionResult Sort(League league, string sortType)
{
//Do some stuff here
return View("Schedule");
}
Cevabın, yönlendirme etrafında döneceğini tahmin ediyorum. Bu beni 2. soruma getirir. Sürekli olarak yeni maproutes eklemeden çalışmak için bu tip ActionLink'i (Action/Controller/Kompleks ve Basit nesnelerin toplanması) nasıl alabilirim. Ekleyebileceğim jenerik/joker bir RouteMap var mı? Böylece global.asax'a sürekli olarak anatomik olarak aynı rota haritalarını eklemem gerekmiyor. Ya da bir eyleme geçmek istediğim nesnelerin türünde bir miktar esneklik istiyorum, böylece kesin imzayı önceden tanımlayamıyorum.
Bu konuyla ilgili birçok gönderi gördüm, ancak bunların hiçbiri sorularımı yanıtladı.
garip. Denetleyicinizin eyleminde FormCollection'ı deneyin ve birden fazla anahtar döndürüp döndürmediğini görün. En kötü durum senaryosu bir form haline getirebilir ve gizli HTML'yi gönderebilirsiniz. – Ammar
"Hangisi önce" derken, ilk olarak yöntem imzasında mı yoksa ilk önce bağlantının URL'sinde mi demek istiyorsunuz? Oluşturulan URL neye benziyor? –