简体   繁体   English

无法对布局的空引用执行运行时绑定

[英]cannot perform runtime binding on a null reference on layout

Its mvc 4.Can any one help me?! 它的mvc 4.有人可以帮助我吗?

Controller: 控制器:

public ActionResult Order(int id, int hotelId)
{
    ViewBag.PackageFrames = packageRepo.GetPackageFrames(id);
    ViewBag.PackageId = id;
    ViewBag.HotelId = hotelId;
    return View();
}

and ViewBag.PackageFrames has three records. ViewBag.PackageFrames具有三个记录。

View: 视图:

@{
    ViewBag.Title = "Range";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<section class="header-page fade-up" style="background: url(/Images/Packages/Backgrounds/@Model.Background) 50% 0 fixed;">
    <div class="bounce-in animate4">
        <h1 class="header-pagetitle bye">@Model.Name</h1>
    </div>
</section>
<section id="internalpage">
    <div class="container clearfix">
        <div class="grid_12">
            @{List<Paristan.AgencyPortal.Model.Packages.PackageFrame> packageFrames = (List<Paristan.AgencyPortal.Model.Packages.PackageFrame>)ViewBag.PackageFrames;}
            <select id="packageFrame" packageId="@ViewBag.PackageId" hotelId="@ViewBag.HotelId">
                @foreach (var packageFrame in packageFrames)
                {
                    <option value="@packageFrame.PackageFrameId">@packageFrame.FromDate - @packageFrame.ToDate</option>
                }
            </select>
        </div>
    </div>
</section>

And the _ViewStart : _ViewStart

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}

and the _Layout is in ~/Views/Shared folder and nothing is null. _Layout位于~/Views/Shared文件夹中,没有任何内容为null。 but I see the following error on Layout = "~/Views/Shared/_Layout.cshtml"; 但我在Layout = "~/Views/Shared/_Layout.cshtml";上看到以下错误Layout = "~/Views/Shared/_Layout.cshtml"; line. 线。

Cannot perform runtime binding on a null reference 无法对空引用执行运行时绑定

You have to use ViewBag.packageFrames in foreach. 您必须在foreach中使用ViewBag.packageFrames。

   @{
        ViewBag.Title = "Range";
        Layout = "~/Views/Shared/_Layout.cshtml";
    }


<section class="header-page fade-up" style="background: url(/Images/Packages/Backgrounds/@Model.Background) 50% 0 fixed;">
    <div class="bounce-in animate4">
        <h1 class="header-pagetitle bye">@Model.Name</h1>
    </div>
</section>
<section id="internalpage">
    <div class="container clearfix">
        <div class="grid_12">
            @{List<Paristan.AgencyPortal.Model.Packages.PackageFrame> packageFrames = (List<Paristan.AgencyPortal.Model.Packages.PackageFrame>)ViewBag.PackageFrames;}
            <select id="packageFrame" packageId="@ViewBag.PackageId" hotelId="@ViewBag.HotelId">
                @foreach (var packageFrame in ViewBag.packageFrames)
                {
                    <option value="@packageFrame.PackageFrameId">@packageFrame.FromDate - @packageFrame.ToDate</option>
                }
            </select>
        </div>
    </div>
</section>

您在.cshtml中具有@ Model.Name,而在控制器中未定义任何模型

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM