2016-05-12 12 views
5

[Route] ile Denetleyici Metodu tarafından çağrılan bir Görünümde, <a> etiketinde bir aspire denetleyicisi ve asp-action kullanırken özniteliği, oluşturulan bağlantının boş bir href özniteliği vardır. Görünüm olarakEtiket yardımcıları ve rota özniteliği arasında tuhaf davranışlar asp.net 5 MVC6

public class ForumController : Controller 
{ 
    [Route("[action]/{sectionId:int}")] 
    public async Task<IActionResult> ShowSection(int sectionId) 
    { 
     //some code 
    } 
} 

:

<a asp-controller="Forum" asp-action="Index">Index</a> 
<a asp-controller="Forum" asp-action="ShowSection" asp-route-sectionId="@Model.ParentSection.Id">@Model.ParentSection.Name</a> 

Oluşturulan html:

<a href="">Index</a> 
<a href="/ShowSection/1">Général</a> 

olarak Kontrolör olarak

Gördüğünüz gibi, ilk bağlantı doğru şekilde oluşturulmadı. Para Birimi eyleminden başka bir Eylemi hedefleyen tüm bağlantılar boş bir href etiketi ile oluşturulur.

Ben ShowSection eylem [Rota] özelliğini kaldırdığınızda: Gördüğünüz gibi

<a href="/Forum">Index</a> 
<a href="/Forum/ShowSection?sectionId=1">Général</a> 

, bağlantılar doğru oluşturulur.

[Route] özniteliklerimi (veya alternatif olarak) korurken bunu nasıl düzeltebilirim?

+0

'Dizin()' eyleminizi, 'Startup.cs' içindeki yönlendirme kaydıyla birlikte gösterin. – haim770

cevap

0

Sonunda (haim770 comment yardımcı @) buldum:

Bir Rota bütün kontrolörler için & eylemleri bağlıyor ve şimdi çalışıyor ekledi.