SORU
1 EKİM 2008, ÇARŞAMBA


ASP.NET MVC - denetleyici parametreleri geçirmeden

Aşağıdaki gibi bir eylem yöntemi ile bir denetleyicisi var

public class InventoryController : Controller
{
    public ActionResult ViewStockNext(int firstItem)
    {
        // Do some stuff
    }
}

Ve çalıştırdığımda belirten bir hata alıyorum:

Sözlük için geçerli bir değer içermiyor parametreleri türü 'System.'Parametresi ''. firstİtem Int32 İsteğe bağlı bir parametre haline getirmeye tür bir başvuru türü veya Null bir tür olmalıdır da.

Bir noktada çalışma vardı ve parametreler olmadan işlevini denemeye karar verdim. Kontrolör parametresi geri koydum kalıcı olmadığını bulmak, şimdi yöntemi aradığımda parametre tanımayı reddediyor.

Bu url sözdizimini eylem çağrısı için kullanıyorum:

http://localhost:2316/Inventory/ViewStockNext/11

Yapmam gereken şey bu hata ve bunu düzeltmek için bunu neden yaptığım hakkında bir fikriniz var mı?

O da aynı nedenle başarısız sınıf için bir tamsayı alır başka bir yöntem ekleyerek denedim. Bir dize alır bir eklemeye çalıştım, ve dize null olarak ayarlanır. Parametreleri ve gayet iyi çalışıyor olmadan bir eklemeye çalıştım ama tabii ki benim ihtiyaçlarına uygun değil.

CEVAP
1 EKİM 2008, ÇARŞAMBA


Yönlendirme ihtiyaçlarınız {controller}/{action}/{firstItem} çizgisinde kurulacak. Eğer global.asax.cs dosyasında varsayılan {controller}/{action}/{id} olarak yönlendirme sen gittikten sonra id geçmek gerekir.

routes.MapRoute(
    "Inventory",
    "Inventory/{action}/{firstItem}",
    new { controller = "Inventory", action = "ListAll", firstItem = "" }
);

... ya da yakın bir şey.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • How to Cook ?

    How to Cook

    31 Ocak 2007
  • Karan Thakur

    Karan Thakur

    23 HAZİRAN 2010
  • Video-Tutorials.Net

    Video-Tutori

    15 Mart 2011