2014-08-27 54 views
0

我有一个小问题。首先,我有这个日期选择器:ASP.NET DateTime和datepicker

<script> 
    $(document).ready(function() { 
     $("#engReq").datepicker(); 
    }); 
</script> 
<p> 
<label for="engReq">Engineering Request:</label> 
<input type="text" id="engReq" name="engReq" class="form-control" required /> 
</p> 

我想从我的ASP.NET控制器将该值传递给类,像这样

控制器:

[HttpPost] 
public dynamic Post([FromBody]AirportDataClass airportData) 
{ 

     airportData.insertData(airportData); 
} 

类:

public class AirportDataClass 
    { 
     public string job_no { get; set; } 
     public DateTime EngineeringReq { get; set; } 
     public DateTime EnginerringRec { get; set; } 
     public string AppForms { get; set; } 
     public string Cheque { get; set; } 
     public string ReadyToSubmit { get; set; } 
     public DateTime DeficiencyReq { get; set; } 
     public DateTime DeficiencyResp { get; set; } 

     public void insertData(AirportDataClass airportData) 
     { 
     } 

    } 

但是当我在public void insertData和checkout airportData上放置一个断点时,这个日期被返回nd not date datepicker的日期:01/01/0001 12:00:00 AM,预计日期是datepicker的日期 - 例如:08/01/2014我做错了什么?

+0

您如何期待'engReq'被转换为'EngineeringReq'? (我也强烈建议不要缩写什么'Req'和'Rec'短的......他们此刻非常相似......) – 2014-08-27 20:38:58

+0

你是对的,我的坏 – 2014-08-27 20:40:47

+0

这个怎么样 '变种dateSelected = $('#<%= engReq.ClientId%>')。val();' – MethodMan 2014-08-27 20:45:35

回答

0

你需要创建一个适当的观点,MVC模型构建器不知道你想映射到模型中的一个特定的属性一些随机的HTML输入控制。如果您使用剃须刀引擎和强类型视图,则可以使用HTML帮助程序(如HTML.editor)来显示正确的HTML,然后它们将自动匹配模型上正确的属性。您的jquery datepicker将可以很好地处理由剃须刀视图引擎呈现的HTML。