0

我有一个使用 wcf 服务的客户端 asp.net mvc3 razoc。我有一个 GetTopCollections 方法,它返回 Collection[]“服务器上的顶级集合”,我有一个 GetTreeView(string id) 方法,它只返回这个 Collection 的第一级而不是所有树。

我想在第一次显示顶级集合(完成),当我点击其中一个顶级集合时,我通过调用 GetTreeView(handle) 方法显示它的树的第一级。

这是控制器上的第一种方法:

public ActionResult GetData()
    {
        client = new DSServiceClient();
        Collection[] _top = new Collection[10];
        client.Open();
        _top = client.GetTopCollections();
        client.Close();
        return View(_top);
    }

这是 GetData 的视图

@model DSClient.Controllers.Collection[]

@{
   ViewBag.Title = "GetData";
   @Html.ActionLink( @Model.ElementAt(0).Handle,"GetData3","Home",new { handle=@Model.ElementAt(0).Handle });
 }

这是 GetData2()

public PartialViewResult GetData2(string handle)
    {
        client = new DSServiceClient();
        Tree tree = new Tree();
        tree = client.GetTreeView(handle);
        return PartialView("~/Views/Shared/GetData2.cshtml",tree);
    }

这是 GetData2 的视图

@model DSClient.Controllers.Tree

@{
ViewBag.Title = "GetData3";
@Model.listObjects.ElementAt(0).Name;
}

这是调用 GetData 的链接

@Html.ActionLink("WebService", "GetData", "Home")

我的问题是 GetData3 的结果显示在其他视图上,但我想在同一个视图上显示它。就像树视图一样。有人能帮助我吗?

4

1 回答 1

0

您将需要:

  1. 渲染整个树并隐藏第二层,直到用户单击它
  2. 像您一样只加载第一级,并在用户单击它们时使用 AJAX 加载其他级别

为您提供一些 jQuery 树视图 -> http://freebiesdesign.com/7-best-jquery-treeview-plugins/

于 2013-04-22T12:20:49.653 回答