求教一个MVC基础问题.

寒叶gg 2013-03-14 07:19:38
视图文件如何使用 控制器变量啊?
貌似只能传递一个实体过去. Controller里面return View(Model);
我要是想用多个变量怎么办?
webform直接在cs里定义protected string str;
前面就能用了,不知道MVC需要怎么弄?
还有就是逻辑代码写在哪啊?cshtml还是 控制器里?

MVC新手求教。。。。
...全文
159 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
白云任去留 2013-03-14
  • 打赏
  • 举报
回复
引用 2 楼 ckhker 的回复:
我只想知道cshtml如何调用控制器里面的变量 比如webform里我可以定义 protected int num=1; protected string title="标题"; protected UserModel userInfo=null; 那么在前台aspx里就可以直接用 <%=num%> <%=title%> <%=userInfo.Name%> 来调用。 ……
要么ViewBag(非强类型),无智能提示;要么扩展你的UserModel类,新增相关属性,如Title、Num,其他就没啥说了
寒叶gg 2013-03-14
  • 打赏
  • 举报
回复
不过这样好像就不能智能感知了。。
寒叶gg 2013-03-14
  • 打赏
  • 举报
回复
原来如痴。。。一语点醒
  • 打赏
  • 举报
回复
在控制器里面可以这样定义变量:ViewBag.UserName = "aaa"; 然后在视图中可以这么使用变量:@ViewBag.UserName
寒叶gg 2013-03-14
  • 打赏
  • 举报
回复
那我有多个实体需要传递还需要强制转换? @foreach (var t in (List<int>)ViewData["test"]) { @:@t } <br> @foreach (var t in (List<string>)ViewData["test1"]) { @:@t } 这样会流失很多性能吧?
yyl8781697 2013-03-14
  • 打赏
  • 举报
回复
controler里面写 ViewData["key"]="test"; 前台<%= ViewData["key"]%> 这么输出试试
寒叶gg 2013-03-14
  • 打赏
  • 举报
回复
我只想知道cshtml如何调用控制器里面的变量 比如webform里我可以定义 protected int num=1; protected string title="标题"; protected UserModel userInfo=null; 那么在前台aspx里就可以直接用 <%=num%> <%=title%> <%=userInfo.Name%> 来调用。 那么MVC里这种模式要怎么弄? Razor里我只会在控制器里用return View(userInfo); cshtml里@model UserModel 来调用, 多个变量就不知道怎么搞了。。
宝_爸 2013-03-14
  • 打赏
  • 举报
回复
Model是个类,可以包含多个成员。

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧