col.Field("DataNews").Format("{0:dd/MMM/yyyy}").Add();
<input name="DataNews" value="{{: DataNews}}" />
public class NewsVM { [Key] public Guid IDNews { get; set; } [Display(Name = "DataNews", ResourceType = typeof(Resources.News))] public DateTime DataNews { get; set; } [Display(Name = "TitoloNews", ResourceType = typeof(Resources.News))] public string Titolo { get; set; } [Display(Name = "TitoloNewsIng", ResourceType = typeof(Resources.News))] public string Titolo_Ing { get; set; } [Display(Name = "DescrizioneNews", ResourceType = typeof(Resources.News))] public string Descrizione { get; set; } [Display(Name = "DescrizioneNewsIng", ResourceType = typeof(Resources.News))] public string Descrizione_Ing { get; set; } [Display(Name = "Link", ResourceType = typeof(Resources.News))] public string LinkNews { get; set; } [Display(Name = "Click", ResourceType = typeof(Resources.News))] public int Click { get; set; } }
[Authorize(Roles = ("Administrator"))] [HttpPost] [ValidateInput(false)] [ValidateAntiForgeryToken] public async Task<ActionResult> CrudNewsUrl(NewsVM value, Guid? key, string action) { log4net.Config.XmlConfigurator.Configure(); log.Info("Inizio esecuzione CrudUrl(NewsVM value, Guid? key, string action)"); try { if (string.IsNullOrEmpty(value.Titolo)) { ModelState.AddModelError(Resources.News.TitoloNews, Resources.News.TitoloObbligatorio); } if (string.IsNullOrEmpty(value.Titolo_Ing)) { ModelState.AddModelError(Resources.News.TitoloNewsIng, Resources.News.TitoloIngObbligatorio); } if (string.IsNullOrEmpty(value.Descrizione)) { ModelState.AddModelError(Resources.News.DescrizioneNews, Resources.News.DescrizioneObbligatorio); } if (string.IsNullOrEmpty(value.Descrizione_Ing)) { ModelState.AddModelError(Resources.News.DescrizioneNewsIng, Resources.News.DescrizioneIngObbligatorio); } if (action == "update") { if (ModelState.IsValid) { News news = new News() { Click = value.Click, DataNews = value.DataNews, Descrizione = Server.HtmlEncode(value.Descrizione), Descrizione_Ing = Server.HtmlEncode(value.Descrizione_Ing), IDNews = value.IDNews, LinkNews = value.LinkNews, Titolo = value.Titolo, Titolo_Ing = value.Titolo_Ing }; if (await _newsRepository.UpdNews(news) != 1) { HttpContext.Response.AddHeader("Exception", Server.HtmlEncode(Resources.Common.ErroreTrasmissione)); Response.StatusCode = 412; } } else { var message = string.Join(" | ", ModelState.Values.SelectMany(v => v.Errors).Select(e => e.ErrorMessage)); HttpContext.Response.AddHeader("Exception", Server.HtmlEncode(message)); Response.StatusCode = 412; } } else if (action == "insert") { ModelState.Remove("value.IDNews"); ModelState.Remove("value.DataNews"); value.IDNews = Guid.NewGuid(); value.DataNews = DateTime.Now; if (ModelState.IsValid) { News news = new News() { Click = value.Click, DataNews = value.DataNews, Descrizione = Server.HtmlEncode(value.Descrizione), Descrizione_Ing = Server.HtmlEncode(value.Descrizione_Ing), IDNews = value.IDNews, LinkNews = value.LinkNews, Titolo = value.Titolo, Titolo_Ing = value.Titolo_Ing }; if (await _newsRepository.InsNews(news) != 1) { HttpContext.Response.AddHeader("Exception", Server.HtmlEncode(Resources.Common.ErroreTrasmissione)); Response.StatusCode = 412; } } else { var message = string.Join(" | ", ModelState.Values.SelectMany(v => v.Errors).Select(e => e.ErrorMessage)); HttpContext.Response.AddHeader("Exception", Server.HtmlEncode(message)); Response.StatusCode = 412; } } else if (action == "remove") { if (key == null) return new HttpStatusCodeResult(HttpStatusCode.BadRequest); await _newsRepository.DelNews(key); } log.Info("Fine esecuzione CrudUrl(NewsVM value, Guid? key, string action)"); } catch (Exception ex) { log.Error(string.Format("Errore:{0}", ex.InnerException == null ? ex.Message : ex.InnerException.Message)); var message = ex.InnerException == null ? ex.Message : ex.InnerException.Message; HttpContext.Response.AddHeader("Exception", Server.HtmlEncode(message)); Response.StatusCode = 412; } return Json(value, JsonRequestBehavior.AllowGet); }
|
@(Html.EJ().Grid<NewsVM>
("NewsGrid").Datasource(ds => ds.Json(Model).CrudURL(Url.Action("CrudNewsUrl", "Admin")).Adaptor(AdaptorType.RemoteSaveAdaptor)).AllowTextWrap().TextWrapSettings(wrap => { wrap.WrapMode(WrapMode.Both); })
.Columns(col =>
{ ...
col.Field("DataNews").Format("{0:" + datePattern + "}").EditType(EditingType.DateTimePicker).Add();
...
})
.ClientSideEvents(eve => eve.ActionComplete("complete") )
)
<script type="text/javascript">
function complete(args) {
if (args.requestType == "beginedit" || args.requestType == "add") {
...
$("#DataNews").ejDateTimePicker();
...
}
}
}
</script>
<script type="text/template" id="NewsTemplate">
@Html.AntiForgeryToken()
...
<input id="DataNews" name="DataNews" value="{{: DataNews}}" />
...
</script>
|