加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 在Umbraco 7中建立联系表格

发布时间:2020-12-16 03:46:47 所属栏目:asp.Net 来源:网络整理
导读:我是MVC的新手,我已经按照教程来构建联系表单页面,但是收到此错误消息:命名空间名称’Models’不存在 控制器 – ContactSurfaceController.cs namespace test.Controllers {public class ContactSurfaceController : SurfaceController{ [HttpPost] public
我是MVC的新手,我已经按照教程来构建联系表单页面,但是收到此错误消息:命名空间名称’Models’不存在

控制器 – ContactSurfaceController.cs

namespace test.Controllers {
public class ContactSurfaceController : SurfaceController

{
    [HttpPost]
    public ActionResult Contact(ContactModel model)
    {
        if (ModelState.IsValid)
        {
            var sb = new StringBuilder();
            sb.AppendFormat("<p>Meddelande: {0}</p>",model.Message);
            sb.AppendFormat("<p>Namn: {0}</p>",model.Name);
            sb.AppendFormat("<p>E-post: {0}</p>",model.Email);
            sb.AppendFormat("<p>Telefon: {0}</p>",model.Phone);

            library.SendMail("noreply@test.se","info@test.se",model.Subject,sb.ToString(),true);

            return RedirectToUmbracoPage(model.ThankYouPage);
        }
        return CurrentUmbracoPage();
    }


} 
}

型号 – ContactModel.cs

namespace test.Models
{
    public class ContactModel
    {
        [Required]
        [DisplayName("?rende")]
        public string Subject { get; set; }
        [Required]
        [DisplayName("Namn")]
        public string Name { get; set; }
        [Required]
        [DisplayName("E-post")]
        public string Email { get; set; }
        [DisplayName("Telefon")]
        public string Phone { get; set; }
        [Required]
        [DisplayName("?rende")]
        public string Message { get; set; }
        public int ThankYouPage { get; set; }
    }
}

部分视图 – ContactForm.cshtml

@model test.Models.ContactModel

@using (Html.BeginUmbracoForm("Contact","ContactSurface",null,new {@class = "contact-form" }))
{ 
    @Html.ValidationSummary(true)

    <div>

        @Html.LabelFor(x => x.Subject)
        @Html.TextBoxFor(x => x.Subject)
        @Html.ValidationMessageFor(x => x.Subject)

        @Html.LabelFor(x => x.Message)
        @Html.TextAreaFor(x => x.Message)
        @Html.ValidationMessageFor(x => x.Message)

        @Html.LabelFor(x => x.Name)
        @Html.TextBoxFor(x => x.Name)
        @Html.ValidationMessageFor(x => x.Name)

        @Html.LabelFor(x => x.Phone)
        @Html.TextBoxFor(x => x.Phone)
        @Html.ValidationMessageFor(x => x.Phone)

        @Html.LabelFor(x => x.Email)
        @Html.TextBoxFor(x => x.Email)
        @Html.ValidationMessageFor(x => x.Email)

        @Html.HiddenFor(x => x.ThankYouPage)

    </div>
    <input type="submit" value="Skicka" class="btn-accept" />
}

在这里,我在第一行收到错误消息
查看 – Contact.cshtml

@using test.Models
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage

@{
    Layout = "uBlogsyBaseSite.cshtml";
}

@Html.Partial("ContactForm",new ContactModel { ThankYouPage = Model.Content.GetPropertyValue<int>("thankYouPage") })

我错过了什么?

我真的需要帮助,任何帮助表示赞赏.

谢谢,
乔纳斯

解决方法

您在哪里存储表面控制器代码和型号代码?

它应该存储在app_code或单独的DLL中.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读