MVC部分视图取值问题

wingwingdi 2011-11-15 11:04:18
用MVC 建立了一个EDIT页面

其中有个下拉列表用 部分视图显示,并选择相关项进行修改.

但我按提交的时候,报错了.

提示 部分视图那行语句.
未将对象引用设置到对象的实例。
...全文
247 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
weizengxun 2011-11-17
  • 打赏
  • 举报
回复
在页面加载是绑定下拉列表,同时在提交时如果发生错误也要绑定下拉列表

public ActionResult Create()
{
var db = new dbContent();
var list = from p in db.NewsType orderby p.SortId descending select p;
ViewBag.TypeId = new SelectList(list, "TypeId", "TypeName");
return View();
}

[HttpPost]
[ValidateInput(false)]
public ActionResult Create(News model)
{
try
{
using (var db = new dbContent())
{
db.News.AddObject(model);
db.SaveChanges();
return RedirectToAction("Index");
}
}
catch
{
var db = new dbContent();
var list = from p in db.NewsType orderby p.SortId descending select p;
ViewBag.TypeId = new SelectList(list, "TypeId", "TypeName", model.NewsType.TypeId);
return View(model);
}
}

页面绑定
@Html.DropDownList("TypeId")
MSDNXGH 2011-11-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sandy945 的回复:]
类似这样

@if(Model.xx!=null){

}
[/Quote]
类似
ailin84 2011-11-16
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 kkbac 的回复:]
可能是你给分布视图传递了一个viewdata[..]值.

你get的action里面给这个viewdata赋值了, 而post的action里面没给这个viewdata赋值.
[/Quote]

+1
kkbac 2011-11-16
  • 打赏
  • 举报
回复
可能是你给分布视图传递了一个viewdata[..]值.

你get的action里面给这个viewdata赋值了, 而post的action里面没给这个viewdata赋值.
wingwingdi 2011-11-16
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 kkbac 的回复:]

可能是你给分布视图传递了一个viewdata[..]值.

你get的action里面给这个viewdata赋值了, 而post的action里面没给这个viewdata赋值.
[/Quote]

的确是在页面用一下语句
<%Html.RenderAction("CatesDropListPartial","Cate", new{ selectValue = Model.CID}); %>
调用了该下拉列表

那请问如何在post的action里面给这个viewdata赋值?
阿非 2011-11-16
  • 打赏
  • 举报
回复
类似这样

@if(Model.xx!=null){

}
threenewbee 2011-11-16
  • 打赏
  • 举报
回复
贴出你的代码。
r01cn 2011-11-16
  • 打赏
  • 举报
回复
阅读Pro ASP.NET MVC 3 Framework这本书的第8、9章,应该可以解决你的问题。也可以参阅我在bbsMVC论坛(http://www.bbsmvc.com/mvclearn/thread-173-1-1.html)或博客园(http://http://www.cnblogs.com/r01cn/)关于这些章节翻译的帖子。

62,046

社区成员

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

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

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

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