【问题标题】:Add a new view to controller向控制器添加新视图
【发布时间】:2013-08-14 21:06:03
【问题描述】:

我的问题对你们大多数人来说可能听起来很愚蠢,但我一直在努力找出问题所在。我基本上有一个方法和一个视图(通过右键单击-> 添加视图创建)。

这是我的方法:

public ActionResult yearlyOverview(FormCollection values)
{
    return View();
}

这是我的观点:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<dynamic>" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
    yearlyOverview
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">    
    <h2>yearlyOverview</h2>
</asp:Content>

我得到的错误信息来自浏览器:

Sys.ArgumentException: Sys.ArgumentException: 无法反序列化。数据不对应于有效的 JSON。参数名称:数据

这是母版页代码:

    <%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /></title>
    <link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
    <link href="../../Content/css/fullcalendar.css" rel="stylesheet" type="text/css" />
</head>

<body>
    <div class="page">

        <div id="header">
            <div id="title">
                <h1>PS Administration</h1>
            </div>

            <div id="logindisplay">
            </div> 

            <div id="menucontainer">

                <ul id="menu">              
                    <li><%= Html.ActionLink("Home", "Index", "Home")%></li>
                    <li><%= Html.ActionLink("Notices", "Index", "Notice")%></li>
                    <li><%= Html.ActionLink("Job Positions", "Index", "JobPosition")%></li>
                </ul>
            </div>
        </div>

        <div id="main">
            <asp:ContentPlaceHolder ID="MainContent" runat="server" />

            <div id="footer">
            </div>
        </div>
    </div>
</body>
</html>

有没有人偶然发现这个问题?

【问题讨论】:

  • 视图没有问题 - 您需要进行更多调查并更新问题。此错误与添加新视图无关,而是您在视图中呈现的内容......似乎是一些“数据”对象未正确创建的问题,视图的母版页部分可能需要此信息。跨度>
  • @AlexeiLevenkov - 您可以在 ASP.NET MVC 视图中使用 Page 指令吗?还是仅在您使用 WebForms 视图引擎时才有效? Razor 不会理解这些,对吧?
  • @KarlAnderson Razor 不会理解那些页面指令。
  • 发布您的母版页代码。
  • 当您使用右键单击添加视图时,您选择了哪个选项:视图数据类?

标签: c# asp.net asp.net-mvc view controller


【解决方案1】:

好吧,我的代码很好,但我犯的错误是使用 ajax.beginForm 而不是普通表单调用表单,我试图解析控制器未返回的对象数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多