将 Grasp 控制器与 MVC 控制器结合使用 - 如何使对象始终对控制器可见?

发布于 2024-10-09 17:28:04 字数 288 浏览 0 评论 0原文

UML 和模式:面向对象分析、设计和迭代开发简介,遵循 UP(统一过程)。它使用 Grasp Controller 模式通过 NewSale()、AddNewItemToSale() 和 CloseSale 等方法与域类交互。在 Windows 窗体中,我可以在 UI 中实例化此类的对象,然后使用其方法来执行操作。这在客户端应用程序中效果很好,但是当我使用 asp.net mvc 时,我找不到一种方法来实例化对控制器 (MVC) 始终可见的对象(每个用户一个)。我无法将其作为属性插入到控制器中,因为它总是创建一个新属性。在 MVC 中是否有类似的工作方式?

UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, that follows the UP(Unified Process). It uses a Grasp Controller pattern to interact with domain classes by some methods like NewSale(), AddNewItemToSale() and CloseSale. In windows form, I can instantiate a object of this class in the UI and then use its methods to perform the actions. This works well in Client apps, but when I use asp.net mvc, I cannot find a way to instantiate an object (one for each user) that was always visible for a Controller (MVC). I cannot insert as an attribute inside Controller because it always create a new one. Is there any way to work like that in the MVC?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

烟花易冷人易散 2024-10-16 17:28:04

使用会话变量来存储值并扩展控制器类并添加自定义属性以返回类型。这样,该对象将可以通过该自定义属性回发

Public DBContext Context 
{
get { 
if(Session["DBContext"] == null)
    Session["DBContext"] = New Context();

return Session["DBContext"]  as DBContext;
}

Use session variable to store the value and extend you controller class and add a custom property to return the type. This way the object will be available in post back through that custom property

Public DBContext Context 
{
get { 
if(Session["DBContext"] == null)
    Session["DBContext"] = New Context();

return Session["DBContext"]  as DBContext;
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文