gpt4 book ai didi

asp.net-mvc-3 - Mvc3 - 处理(几乎)所有请求所需的数据的最佳实践?

转载 作者:行者123 更新时间:2023-12-02 04:16:46 24 4
gpt4 key购买 nike

我正在 mvc3 中创建一个应用程序,想知道如何处理所有应用程序请求所需的数据库数据,其中一些取决于 session ,其中一些取决于 url 模式,基本上所有数据都在数据库中。

想了解最佳实践

最佳答案

我在应用程序中所做的并认为最佳实践是将通用数据加载到 Controller 构造函数上的 ViewBag。

对于每个项目,我都有一个扩展 Controller 的 DefaultController 抽象类。因此,项目中的每个 Controller 都必须继承自DefaultController,而不是Controller。在该类的构造函数中,我加载整个项目通用的所有数据,如下所示:

// DefaultController.cs
public abstract class DefaultController : Controller
{
protected IRepository Repo { get; private set; }

protected DefaultController(IRepository repo)
{
Repo = repo;
ViewBag.CurrentUser = GetLoggedInUser();
}

protected User GetLoggedInUser()
{
// your logic for retrieving the data here
}
}


// HomeController.cs
public class HomeController : DefaultController
{
public HomeController(IRepository repo) : base(repo)
{
}

// ... your action methods
}

这样,您的 View 中将始终显示已登录的用户。

关于asp.net-mvc-3 - Mvc3 - 处理(几乎)所有请求所需的数据的最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6548509/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com