2010-02-25 60 views
0

我在查看页面中有2个用户控件实例(ascx)。ViewData在ASP.Net MVC控件中重置

我在用户控件中设置ViewData [“xyz”] =“True”。

第一个实例将ViewData [“xyz”]设置为“True”。但是,该用户控件的第二个实例中不会保留相同的值。

我期待ViewData [“xyz”]仍然是“真”,但它是空的。

请帮忙。

在用户控件中共享变量的最佳方式是什么?

回答

3

任何逻辑都应该在控制器内完成。用户控件(视图,部分视图)不应该有需要将数据放入ViewData集合的逻辑。视图仅用于演示。

0

也许你可以做((ViewPage)Page).ViewData["whatever"] = "value";

一个更好的想法可能是不要求用户控件之间共享的状态,