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

CS7036错误消息在asp.net核心剃须刀页面C#中的Pages文件夹中使用Partial.cshtml文件

如何解决CS7036错误消息在asp.net核心剃须刀页面C#中的Pages文件夹中使用Partial.cshtml文件

我正在Visual Studio Enterprise 2019中使用Asp.net核心Razor页面C#构建应用程序。我想向现有应用程序添加日历应用程序。我在Pages文件夹下的Calendars文件夹中添加一个名为CRUDPartial.cshtml的表单。

但是,在第一行代码中引发了错误,并且BeginForm用红色突出显示了:

@using (Html.BeginForm(Model.ActionName,Paths.INDEX_PATH,new { ReturnUrl = ViewBag.ReturnUrl },FormMethod.Post,new { @class = "form-horizontal",role = "form" }))
{
    @Html.AntiForgeryToken()

    <div class="well bs-component custom-background2">
        <div class="row" style="display:none;">
            <div class="form-group">
                <div class="col-md-10 col-md-pull-1">
                    @Html.HiddenFor(m => m.Event_id,new { @readonly = "readonly",placeholder = Html.displayNameFor(m => m.Event_id),@class = "form-control" })
                    @Html.HiddenFor(m => m.IsView,placeholder = Html.displayNameFor(m => m.IsView),@class = "form-control" })
                    @Html.HiddenFor(m => m.ButtonText,placeholder = Html.displayNameFor(m => m.ButtonText),@class = "form-control" })
                    @Html.HiddenFor(m => m.StartDateTime,new { id = "startDateVal",@readonly = "readonly",placeholder = Html.displayNameFor(m => m.StartDateTime),@class = "form-control" })
                    @Html.HiddenFor(m => m.EndDateTime,new { id = "endDateVal",placeholder = Html.displayNameFor(m => m.EndDateTime),@class = "form-control" })
                </div>
            </div>
        </div>

错误消息是:

CS7036:-没有给出与'IHtmlHelper.BeginForm(string,string,object,FormMethod,bool ?,object)'所需的形式参数'htmlAttributes'相对应的参数

构建解决方案时,构建的输出会在以下位置抛出错误消息: 完成的建筑项目“ ProjectName.csproj”-失败。

其后是一些其他错误消息:- CS0246-找不到类型或名称空间名称“ PrivacyModel”(您是否缺少using指令或程序集引用?)

并且错误消息出现在以下代码行:

 public global::Microsoft.AspNetCore.Mvc.Rendering.IHtmlHelper<PrivacyModel> Html { get; private set; }
public global::Microsoft.AspNetCore.Mvc.ViewFeatures.ViewDataDictionary<PrivacyModel> ViewData => (global::Microsoft.AspNetCore.Mvc.ViewFeatures.ViewDataDictionary<PrivacyModel>)PageContext?.ViewData;

任何解决这些问题的帮助将不胜感激。

解决方法

Html.BeginForm助手不应在Razor Pages中使用。它旨在支持向MVC控制器和操作提交表单。您应该改用form tag helper

但是出现错误消息的原因是.NET Core IHtmlHelper.BeginForm方法expects 6 arguments。您只提供了5。

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