2

我一直在开发一个应用程序,它使用基于单个 USP/dbml 的模型并使用 ViewBags 填充数据输入和编辑视图的查找列表。在我开始实现业务逻辑之前,这一直没问题。Dropdownlists 因为它们是用 ViewBag.llkup 完成的,所以在脚本函数中不可用,除非明确传递给函数。我可以创建一个包含多个 USP 的模型。我想知道关于这个问题的最佳实践是什么。谢谢布鲁斯,我在控制器中有以下代码:

    using (var dc = new usp_TM_Select_ShortNameDataContext())
    {
        String[] s = this.User.Identity.Name.Split('\\');
        string[] s2 = s[1].Split('.');
        string a = s2[0] + '.' + s2[1];
        ViewBag.Message = a.ToString();
        ViewBag.DetailsList = new SelectList((System.Collections.IEnumerable)dc.usp_TM_Select_ShortName().ToList(), "short_title", "short_title");
        var poc = new usp_ARD_Select_POCDataContext();
        return View(poc.usp_ARD_Select_POC().Single());
    }

两者都是强类型视图,但是如果它们在单个模型中,我如何将它们都返回到视图中,以便可以使用(访问)它们?我有更复杂的示例,其中我返回了一条记录并进行了多次查找。我目前正在使用 ViewBag 执行此操作,并且想使用 ViewModels。谢谢布鲁斯

4

2 回答 2

0

将视图强类型化到 ViewModel 将是我的选择。

您可以在此处查看示例:

http://www.bidn.com/blogs/mbrown/development/2139/mvc-3-view-models

我什么时候使用 View Models、Partials、Templates 并使用 MVC 3 处理子绑定

于 2011-12-15T19:43:48.810 回答
0

99% 的最佳实践是根据您的模型(或者ViewModel,如果适用)创建强类型视图。这样你就可以为特定领域的模型定制你的视图。

于 2011-12-15T19:38:06.803 回答