微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

令人恼火的 ArgumentNullException:使用视图数据时,值不能为空错误这段代码有什么问题?

如何解决令人恼火的 ArgumentNullException:使用视图数据时,值不能为空错误这段代码有什么问题?

尝试了很多互联网上可用的建议,但几乎所有建议都以相同的错误告终。任何帮助将不胜感激,谢谢。我是新手,正在学习,如果这个初级问题请原谅。为什么我无法在我的视图中访问 ViewData?

控制器

public ActionResult broadcastData()
{
    List<broadcast> broadcastList = new List<broadcast>();
    broadcastList = (from d in _db.Boradcast
                    select d).ToList();            

    ViewData["broadcastData"] = broadcastList;

    return View(broadcastList);
}

查看

@model List<SideCar.Models.broadcast>

@{
    var viewDataMyObj = ViewData["broadcastData"] as List<SideCar.Models.broadcast>;
}

@foreach (var item in viewDataMyObj.ToList())
{
    <h2>@item.broadcastheading</h2>
}

出现以下错误

ArgumentNullException: Value cannot be null. (Parameter 'source')
System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)

如果我在 @foreach 中的 viewDataMyObj.ToList() 之后从视图中删除 .ToList() 那么我会收到以下信息:

System.NullReferenceException: 'Object reference not set to an instance of an object.'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。