我正在MVC中进行CRUD操作。我也在使用Entity Framework。我只显示用户的12个值(还有当前时间(createDateTime)值,用户在创建之前无法看到)。当我单击“创建”按钮时。 它应该保存我在编辑器字段上写的所有值,并将当前时间保存到数据库中。
<div class="form-group">
@Html.LabelFor(model => model.languageID, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.languageID, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.languageID, "", new { @class = "text-danger" })
</div>
</div>
[HttpPost][ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "pkID,projectID,languageID,projectCompany,projectTitle,projectLink,projectText,projectImageURL,isPassive,createDateTime,createUsername,updateDateTime,updateUsername")] cusContentProjects cusContentProjects)
{
if (ModelState.IsValid)
{
db.cusContentProjects.Add(cusContentProjects);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(cusContentProjects);
}
答案 0 :(得分:1)
使用 UTC 值作为日期,然后根据UI要求解析为本地。 在db中以 UTC 格式存储日期时间总是可以避免在白天节约日期间避免日期时间计算错误和时间更改。
DateTime.UtcNow
答案 1 :(得分:0)
你可以这样做:
cusContentProjects.createDateTime = DateTime.Now; //Server current datetime
db.cusContentProjects.Add(cusContentProjects);
db.SaveChanges();
return RedirectToAction("Index");
答案 2 :(得分:0)
您可以使用DateTime.Now获取当前日期
答案 3 :(得分:0)
您应该从服务器获取dateTime,因为从用户的PC获取它可能不是正确的日期。
你可以这样做:
SplitPane splitPane = new SplitPane();
splitPane.heightProperty().addListener(new ChangeListener<Number>() {
@Override
public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
double height = splitPane.getHeight();
double dividerPositionFromTop = 100;
splitPane.setDividerPosition(0, dividerPositionFromTop/height);
}
});
splitPane.getItems().addAll(new TextArea("1"), new TextArea("2"));
splitPane.setOrientation(Orientation.VERTICAL);
请记住,您保存DateTime的变量也需要输入DateTime。
希望它有所帮助。 祝你好运!