2016-04-26 16 views
-2

Hallo zeige ich mit C# MVC ganz neu bin, ich habe ein Problem, wie dieKann eine Ansicht als Teil einer anderen Ansicht in MVC

<div class="navbar-collapse collapse"> 
    <ul class="nav navbar-nav"> 
     <li>@Html.ActionLink("Trang Chủ", "Index", "Home")</li> 
     <li>@Html.ActionLink("Giới Thiệu", "About", "Home")</li> 
     <li>@Html.ActionLink("Tin Tức", "News", "Home")</li> 
     <li>@Html.ActionLink("Thăng Hạng", "Upgrade", "Home")</li> 
     <li>@Html.ActionLink("Thẻ Loyalty", "Card", "Home")</li> 
     <li>@Html.ActionLink("Tích Điểm", "Point", "Home")</li> 
    </ul> 
    @Html.Partial("_LoginPartial") 
</div> 

es in _layout.cshtml ist, jetzt jene Link ich bin fester Code. In der Datenbank enthält es diese Verbindung. Jetzt möchte ich einen Blick & Controller erstellen es

public ActionResult MenuFront() 
{return View(db.Loyalty_MenuFront.Where(m => m.MenuType == 1 && m.Display == 1 && m.ParentID == 0));} 

Ansicht

@model IEnumerable<MPLoyalty_MVC.Models.Loyalty_MenuFront> 
@{foreach (var item in Model) 
{<li>@Html.ActionLink("" + item.Name, "" + item.Method, "" + item.Controller)</li>}} 

Aber es

-Controller nicht funktioniert anzuzeigen. Kann mir bitte jemand helfen. Danke!

+0

Könnten Sie Ihren Code hier statt Bilder einfügen? – Zippy

+1

* Aber es funktioniert nicht. * Hilft niemandem .. Kannst du die Fehler-/Ausnahmemeldung – Izzy

+0

posten ich benutze @ Html.Action ("MenuFront") anstelle des harten Codes dann fangen sie Überlastungsausnahme. Coz das _layout lädt eine Unendlichkeitsschleife bei MenuFront() –

Antwort

0

Ich glaube, dass Ihre Teilansicht unter dem falschen Ordner in Ihrer Lösung gespeichert werden kann. Es sollte sich entweder im selben Ordner wie Ihre Ansicht befinden oder unter dem Ordner "Ansichten"> "Freigegeben" sein.

0

Thank u guys, Ich habe Verwendung ajax es zu lösen

<script> 
$(document).ready(function() { 
    $.ajax({ 
     type: "POST", 
     url: "/Home/MenuFront", 
     dataType: 'json', 
     success: function (data) { 
      for (var i = 0; i <= Object.keys(data).length; i++) { 
       $("#menu").append('<li><a href="/' + data[i].controller + '/' + data[i].method + '">' + data[i].name + '</a></li>'); 
      } 
     } 
    }); 
}); 

public ActionResult MenuFront() 
    { 
     var menu = db.Loyalty_MenuFront.Where(m => m.MenuType == 1 && m.Display == 1 && m.ParentID == 0) 
      .Select (m => new { 
       name = m.Name, 
       method = m.Method, 
       controller = m.Controller 
      }) 
      .ToList(); 
     return Json(menu); 
    } 
Verwandte Themen