在使用MVC5 添加视图后 添加的视图中 关键字ViewBag model 等报错。

在使用MVC5 添加视图后 添加的视图中 关键字ViewBag model 等报错。,第1张

你要确定你的相关dll有没有引用错, mvc3,4,5中的dll命名是一样的, 但是里面的内容是 不一样的, 还有是不是缺少了什么没有引用, 或者webconfig配置的问题, webconfig中系统生成的内容最好不要乱动, 里面有很多dll的版本信息, 乱了之后问题很难找的

一、1、在Test控制器下,创建Message方法

public class TestController : Controller{public ActionResult Message(){var testObj = new List<string(){aaa, bbb, ccc}//将testObj对象,传入MessageControl分部视图,返回分部视图对象

return PartialView(MessageControl, testObj)}}

2、创建 MessageControl分部视图

在Views文件夹-Shared文件夹,Shared文件夹右键添加视图,选中“创建分部视图”,文件名:MessageControl

@model List<string<ul@foreach (var item in Model){<li@item</li}</ul

3、视图调用,分部视图MessageControl

@{Html.RenderPartial(MessageControl)}

二、指定Controller和Action

@Html.Action(方法名,

控制器名)@{Layout = null}

<!DOCTYPE html<html<head<titleIndex</title</[email protected](Message, Test)</div</body</html

但Controller和Action不是必须的,你也可以新建一个对象传给分部视图 MessageControl

<!DOCTYPE html<html<head<titleIndex</title</[email protected](MessageControl, new List<string { ccc, ddd, eee })</div</body</html

三、通过JQuery去调用Test/Message,并把结果填充到ID为fuck的DIV中

<h3Use JQuery</h3

<a href=javascript:onclick=loadFuck()Invoke LoadPartial</a

<div id=fuck</div

<script type=text/javascript

function loadFuck() {

不知道你想问的是什么。

但还是提供相关的知识:

使用强类型,前台绑定Model,添加的时候,一个空的Model传到前台,编辑的时候,是一个有值的Model。这样页面就直接绑定上了。

而保存的时候,后台 if else 判断下,当前数据id是否 为空,为空则为添加,否则为编辑(当然,你需要将当前数据Id放到隐藏域里面,如果你不显示的话)。

要想代码清晰一点,封装一下,新增与编辑的逻辑即可。以免一个方法承载过多的逻辑,闲的冗长,不易阅读。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/7904070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存