【问题标题】:visual studio 2012 asp.net HTTPpost data to db errorvisual studio 2012 asp.net HTTPpost 数据到 db 错误
【发布时间】:2013-12-04 14:57:26
【问题描述】:

使用以下代码时:

@{
    ViewBag.Title = "Insert";
    Layout = "../_Insert.cshtml";
    model Namespace.GoogleCalendarModel
}

<label>Kies een evenement</label>
<select>
    @foreach (var e in ViewBag.allEvents)
    {
        <option value="@e.Id">@e.Titel</option>
    }
</select>
@using (Html.BeginForm("Insert","GoogleCalendar", FormMethod.Post, new {enctype="multipart/form-data"}))
{
    <div id="container">
        <div>
            <label>Formuleer werksfeer</label>
            @Html.TextBoxFor(model => model.txtModus);
        </div>

        <div>
            <label>Formuleer de opdrachten</label>
            @Html.TextBoxFor(model => model.txtOpdrachten);
        </div>

        <div>
            <label>Formuleer mededeling</label>
            @Html.TextBoxFor(model => model.txtMededeling);
        </div>
    </div>

    @Html.ValidationSummary(true);
   @Html.TextBoxFor(model => model.toevoegen);
}

我在模型 Namespace.GoogleCalendarModel 上收到以下错误: 只有assignment、call、increment、decrement、await和new对象表达式可以作为语句使用

有人知道如何解决这个问题吗?还是在 MVC asp.net Visual Studio 2012 中将数据写入 db 的 httppost 工作示例?

【问题讨论】:

    标签: c# asp.net-mvc http-post models


    【解决方案1】:

    必须使用@model指定模型:

    @model Namespace.GoogleCalendarModel  //notice there's no semicolon at the end
    
    @{
        ViewBag.Title = "Insert";
        Layout = "../_Insert.cshtml";
    }
    

    您没有分配任何东西,因为model(注意第一个小写字母)不是变量。您可以将其视为类似于 using 关键字的构造,用于添加命名空间。

    【讨论】:

    • 谢谢,但实际上确实有效,这是关于模型命名空间 GoogleCalendarModel,抱歉我的问题不清楚
    • @model thegymCalendar.Models.apiEvents; @{ ViewBag.Title = "插入";布局 = "../_Insert.cshtml";我这样做了,但仍然是同样的错误..
    • @Sesamzaad,请注意我没有在@model 声明的末尾写;。据我从您的评论中可以看出,您正在写 ; 并且通常会产生错误。
    • 但由于某种原因,我仍然无法将此数据添加到我的数据库中。我有我的类 apiEvents:pastie.org/private/mm98rdmyubgcamvpbm5ww 我的控制器 AppController:pastie.org/private/ef37mddqcfysnahkbwmllg 和我的观点:pastie.org/private/arpvpbjvtdrtcc5rzn4mia我在 eventm.insert(gymevent) 上生成错误;参数 1:无法从 'thegymCalendar.Models.apiEvents' 转换为 'thegymCalendar.Models.GoogleCalendar'
    • @Sesamzaad,我真的不能说哪里出了问题。您应该尝试调试:在您的Insert post 操作中添加一个断点,并查看返回的对象是否包含所有正确的数据;如果数据正确发布,则您的eventm.insert(gymevent); 有问题;如果不是,则视图有问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多