我如何摆脱不能转换方法组" TextBoxFor"到非委托类型"对象"?

时间:2015-03-20 13:32:22

标签: html asp.net-mvc-4 model-view-controller

首次在visual studio上使用asp.net和MVC4尝试创建一个简单的表单,以便客户输入航班预订分配的详细信息,并出现此错误(如下所示)。

我似乎无法修复它,不知道在哪里要修复它说实话。有没有其他方法可以创建一个更简单的表单,还是有人可以帮助解决这个问题?

查看:

@model WebsiteApplicationASSES.Models.customerdetails

@{
    ViewBag.Title = "customerBooking";
}
<!DOCTYPE html />
<html></html>

</div>

<div>
    @using (Html.BeginForm())
    {
        <table>
         <tr>
        <td>  @Html.Label ("First Name:")</td>
        <td>  @Html.TextBoxFor (x=>x.customerFirstName)</td>
       </tr>
    }

型号:

namespace WebsiteApplicationASSES.Models
{
    public class customerdetails
    {
        public string customerFirstName { set; get; }
        public string customerSecondName { set; get; }
        public int customerAge { set; get; }
        public int customerTelephoneNumber { set; get; }
        public string customerEmail { set; get; }
        public int numberOfPassangers { set; get; }
        public int passangersAge { set; get; }


    }
}

""
谢谢你!

1 个答案:

答案 0 :(得分:3)

尝试删除空格。 Razor解析器将尝试将@Html.TextBoxFor作为方法组调用,并将(x=>x.customerFirstName)视为文本。

应该是:

@Html.TextBoxFor(x=>x.customerFirstName)

<小时/> 在正常的C#中,这可行。但是,使用Razor单行不能包含空格,除非用括号括起它们:@(Html.TextBoxFor (x=>x.customerFirstName))