问题标签 [viewdata]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
124790 浏览

c# - 将额外的 ViewData 传递给强类型的局部视图

我有一个采用 ProductImage 的强类型部分视图,当它被渲染时,我还想为它提供一些我在包含页面中动态创建的额外 ViewData。如何通过 RenderPartial 调用将我的强类型对象和自定义 ViewData 都传递给局部视图?

0 投票
5 回答
25009 浏览

asp.net-mvc - 将视图数据保留在 RedirectToAction 上

在redirectToAction 之后,这不会在视图数据中保留“信息”文本。我将如何以最优雅的方式解决这个问题?

我目前的想法是将 Index controlleraction 中的内容放在 [NonAction] 中,并从 Index 操作和 CreateUser 操作中调用该方法,但我觉得必须有更好的方法。

谢谢。

0 投票
3 回答
30397 浏览

asp.net - ASP.NET MVC - 如何将数组传递给视图?

我在这里苦苦挣扎,寻找一种简单的方法将数组从控制器传递到 ASP.NET MVC 框架上的视图。

所以在我的控制器中,我会有类似的东西:

所以在我看来,我只需调用ViewData["passedArray"]并在其上运行一个循环。

但显然ViewData被视图接收为System.String,可能是因为 Array DataType 上的声明,但不幸的是我不知道如何正确地简单地传递它而不创建数百万行代码。

如果有人能帮助我,那就太好了。

提前致谢

0 投票
2 回答
1653 浏览

redirect - 在 RenderAction 调用之间维护 ViewData

我正在我网站的每个页面上使用 Html.RenderAction 呈现一个常见的登录表单。

如果用户在文本框中输入他们的详细信息并单击“提交”,它会向处理登录的控制器发出 POST。

如果他们犯了错误,例如输入了无效的电子邮件地址,它将在 ModelState 中填充错误消息,然后重定向回他们之前所在的任何页面。

问题是,因为 RenderAction 作为单独的请求发生,我丢失了 ViewModel。

即使我将它放入 TempData 它也会丢失,因为 TempData 在每个单独的请求中都会被刷新。

有没有办法在连续的 Html.RenderAction 调用之间保存数据?

如果没有,关于我如何破解这个的任何建议?(应该把数据放在Session中?)

0 投票
1 回答
92 浏览

asp.net-mvc - 谁能告诉我是否以及为什么我应该在 ASP.Net MVC 中使用 ViewData 无效?

这可能已经出现过,并且可能非常主观。我一直避免使用 ViewData 并使用 FromViewModel 类将信息传递给视图。

这种方法有什么主要优点吗?

谢谢

戴维

0 投票
1 回答
153 浏览

jquery - 如何在 ASP.Net MVC 中保留 JQuery 搜索的价值

我有一个 MVC 视图,其中有一个搜索框。在 keyup 上,我执行 JQuery 搜索并将结果呈现给 div>

这一切都很好。我的问题是:

保存搜索的嵌套方式是什么,以便如果用户移动到另一个视图,他们会返回到同一组结果等?

我试图避免使用 ViewData 但在这种情况下可能没问题。

谢谢

0 投票
1 回答
1569 浏览

model-view-controller - ActionFilterAttribute 中的 ViewData - 对象引用未设置为对象的实例

我一直在尝试使用 ActionFilterAttribute 从数据库加载母版页内容(基于查询字符串中的“TargetCode”)。但是,我在将 ViewData 设置为从数据库返回的数据时遇到问题,代码如下:

{ HomeRepository hr = new HomeRepository();

}

除了最后一行 (result.ViewData["ThemeData"] = ThemeData;) 外,一切都按预期工作

当我调试代码时,它显示 ThemeData 确实有我从数据库返回的数据,但我无法将其设置为 result.ViewData["ThemeData"]。错误是“对象引用未设置为对象的实例”。在那条线上。

任何帮助表示赞赏。非常感谢。

0 投票
2 回答
92 浏览

asp.net-mvc - 将视图逻辑放在强类型的视图数据类中是否可以接受?

假设您有一个视图,它需要一些需要计算但没有外部依赖的数据。(例如,过去 5 年的可枚举字符串列表。)将其放置在强类型视图类中是否可以接受?

像这样的东西:

现在,如果该计算依赖于视图数据类中的其他属性怎么办?假设如果年份出现在日期列表中,这个“LastThreeYears”属性会在年末附加一个星号?

免责声明:这仅适用于特定于单个视图并且不会被存储库、视图模型等正确处理的数据。

一方面,在我看来,视图数​​据应该就是这样:一个毫无生气的属性集合,它们只是从控制器传递给视图。另一方面,这更漂亮。

0 投票
3 回答
11056 浏览

asp.net-mvc - 使用 ASP.NET MVC 将多个视图返回到一个 ActionResult

我想要实现的基本上是:

尽管到目前为止我对 MVC 的体验是,我必须将数据返回到视图模型才能以以下方式在视图本身中使用它:

现在,即使我知道它行不通,我的想法基本上是:

我想知道的是,这样做的正确方法是什么?我不知道如何走正确的路,但我想我至少有理论,只是不知道如何实现它。

感谢您提前提供任何帮助。


编辑

根据以下评论,我进行了以下代码编辑/添加:

索引()动作

调用/索引.aspx

但是,该行<%=Html.ViewData("MyOpenCallsCount")%>给了我一个 End of Statement 预期的错误。

另外,我确实让它编译了一次,但是我Unable to cast object of type 'System.Data.Linq.DataQuery1[CustomerServiceHelpdesk.hdCall]' to type 'CustomerServiceHelpdesk.hdCall'.从该行得到了错误Dim viewOpenCalls As New Calls With {.OpenCalls = callRepository.FindAllOpenCalls()}

我哪里做错了?

当涉及到这样的事情时,我有点菜鸟,所以非常感谢任何帮助。

0 投票
1 回答
119 浏览

c# - 使用 ViewData 跟踪每页加载的脚本

我目前正在尝试找到一种仅在需要时才加载我的 javascript 文件的好方法。为了做到这一点,我为 faceboxlinks、datepickerfields、tinymcefields 和其他需要外部 js 和初始化 jquery 表达式的脚本创建了几个 HtmlHelper。在这些助手中,我使用 jQuery 执行脚本getScript()并使用它的回调函数来初始化脚本。

现在我的问题来了。我最初的想法是在字符串列表中跟踪这些脚本并将其放入 htmlHelper.ViewData。但是,不幸的是,这失败了。出于某种原因,此视图数据不会传递给部分视图或类似的东西;它不保留列表..

是否有另一个地方可以全局保存我的字符串列表而不是助手的 ViewDataDictionary,或者我是否以错误的方式使用了这个 ViewData,我应该出于某种原因将它传递出去?任何澄清或帮助将不胜感激!