2010-05-10 48 views
0

嗨在我的数据库中有一个字段“date_start”类型整数。管理日期字段时,在数据库中为int

这是形式的一部分,这一领域

<div class="editor-label"> 
       <%: Html.LabelFor(model => model.date_start) %> 
      </div> 
      <div class="editor-field"> 
       <%: Html.TextBoxFor(model => model.date_start, new { @class = "calendar" })%> 
       <%: Html.ValidationMessageFor(model => model.date_start) %> 
      </div> 

在我想要的形式,该字段的格式是日期类型。 并在调用我的函数进行转换后,将它存储为int类型。 我该如何管理它?

感谢

回答

0

好的。我假设你有一个Linq生成的类,我们将其称为LGC,并且该类是int类型的属性,称为date_start。

开始,包裹LGC在另一个类:

public class LGCPageForm 
{ 
    public LGC BaseModel { get; set; } 
    public DateTime date_start_as_date { get; set; } 
} 

设置LGCPageForm类是你的页面的Model类。这将需要一些重构,但我认为这是你最好的选择。现在,在你的表单中,你会看到类似的东西:

<div class="editor-label"> 
    <%: Html.LabelFor(model => model.date_start_as_date) %> 
    <%: Html.TextBoxFor(model => model.date_start_as_date, new { @class = "calendar" })%> 
    <%: Html.ValidationMessageFor(model => model.date_start_as_date) %> 
</div> 

然后,捕获你的回传。您一定要通过DataAnnotations实施验证,但这应该让您开始朝着正确的方向发展:

[HttpPost] 
public ActionResult SubmitWeirdDate(LGCPageForm form) 
{ 
    //I'm not sure if this is the conversion you want? 
    form.LGC.date_start = form.LGC.date_start_as_date.Ticks; 
} 
0

还有的Unix时间戳此,这基本上是一个整数(并且可以被存储为例如)。我不知道如何在ASP.NET中实现这一点。检查是否有一个名为TimeStamp的类,它可以在构造(或稍后)时接受一个整数,然后查找带有TimeStamp的表单元素。这就是说,我在ASP.NET中没有任何经验。

相关问题