【发布时间】:2014-09-05 06:07:09
【问题描述】:
我正在构建一个 MVC 电子邮件表单,教程页面上的所有内容都可以正常工作,除非我保留 [HttpPost] 分页符。
我不认为我忘记了导入。
什么会解决这个问题,这样电子邮件表单才会发布,或者[HttpPost] 不会导致错误?
我也试过[System.Web.Mvc.HttpPost]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Net.Mail;
using System.Text;
using SW.Models;
namespace SW.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult About()
{
//ViewBag.Message = "Your application description page.";
return View();
}
//[System.Web.Mvc.HttpPost]
public ActionResult Contact(ContactModels c)
{
//ViewBag.Message = "Your contact page.";
if (ModelState.IsValid)
{
try
{
MailMessage msg = new MailMessage();
SmtpClient smtp = new SmtpClient();
MailAddress from = new MailAddress(c.Email.ToString());
StringBuilder sb = new StringBuilder();
msg.To.Add("mail@hotmail.com");
msg.Subject = "Contact Us";
msg.IsBodyHtml = false;
smtp.Host = "mail.mail.com";
smtp.Port = 25;
sb.Append("First name: " + c.FirstName);
sb.Append(Environment.NewLine);
sb.Append("Last name: " + c.LastName);
sb.Append(Environment.NewLine);
sb.Append("Email: " + c.Email);
sb.Append(Environment.NewLine);
sb.Append("Comments: " + c.Comment);
smtp.Send(msg);
msg.Dispose();
return View("Success");
}
catch (Exception)
{
return View("Error");
}
}
return View();
}
}
}
当我转到联系人时,我得到了错误:
“/”应用程序中的服务器错误。
找不到资源。
描述:HTTP 404。您要查找的资源(或其依赖项之一)可能已被删除、名称已更改或暂时不可用。请查看以下 URL 并确保其拼写正确。
请求的网址:/Home/Contact
版本信息:Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.18446
【问题讨论】:
-
你遇到了什么错误?
-
Contact 需要同时使用
POST和GET的问题吗? IE。如果添加帖子注释,获取联系页面不再有效?