Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 关于MVC3母版页和用户控件_Asp.net Mvc 3 - Fatal编程技术网

Asp.net mvc 3 关于MVC3母版页和用户控件

Asp.net mvc 3 关于MVC3母版页和用户控件,asp.net-mvc-3,Asp.net Mvc 3,关于MVC3母版页问题 我有一个母版页,在母版页中我使用了一个usercontrol。 现在,在这个usercontrol中,我从actionresult数据库中绑定了一个下拉列表 现在的问题是,每当我使用另一个视图时,我必须调用该操作结果,以便在包含母版页的所有其他页面中一次又一次地绑定该下拉列表。 我怎样才能防止这种情况发生? 记住我的朋友们,我正在使用MVC3 根据您的问题,我理解您不希望在执行每个视图时进行DB调用,因为您在母版页中包含了下拉列表 为了克服这个问题,您需要为该用户控件(p

关于MVC3母版页问题 我有一个母版页,在母版页中我使用了一个usercontrol。 现在,在这个usercontrol中,我从actionresult数据库中绑定了一个下拉列表

现在的问题是,每当我使用另一个视图时,我必须调用该操作结果,以便在包含母版页的所有其他页面中一次又一次地绑定该下拉列表。 我怎样才能防止这种情况发生?
记住我的朋友们,我正在使用MVC3

根据您的问题,我理解您不希望在执行每个视图时进行DB调用,因为您在母版页中包含了下拉列表


为了克服这个问题,您需要为该用户控件(partialpage)实现OutCache。请查看更多详细信息。如果您还有任何疑问,请务必告诉我。

如果您不需要检查数据库中的数据,请制作一个静态字典并将其绑定到DropDownList for:

private static readonly Dictionary<int, string> yourData
    = new Dictionary<int, string>
{
    { "1", "Your data one" },
    { "2", "Your data two" }
};
专用静态只读数据字典
=新词典
{
{“1”,“你的数据一”},
{“2”,“你的数据2”}
};

关于

请提供您的视图和操作的代码示例,以帮助澄清问题。嘿..简单地理解一下在母版页中我有一个下拉控件..现在我不想在所有使用该母版页的操作结果中绑定该下拉控件..我如何防止..是的,我目前为您使用了缓存技术阻止路由到数据库..但问题是..这不是正确的方法..必须有某种解决方法..防止对所有操作结果进行DB调用..这是正确的方法吗?另一种可能是将数据库中的数据缓存在服务器上,这样,您就不用去数据库构建下拉列表,而是使用缓存的数据。但这可能需要您进行某种形式的同步。使用输出缓存可能正适合您。@darshandoshi。。这是减少DB调用的最佳方法。如果对您有帮助,请标记为答案。是的,但下拉列表值可能会更改..因为我的要求来自数据库数据更改的频率有多高,正如您所说的,您不希望在每个actionresult上都获得数据?