我尝试在Silverlight Web资源内部的表单上设置Date字段,但表单字段仍为空:
var xrm = (ScriptObject)HtmlPage.Window.GetProperty("Xrm");
var page = (ScriptObject)xrm.GetProperty("Page");
var startdate = (ScriptObject)page.Invoke("getAttribute", "scheduledstart");
startdate.Invoke("setValue", DateTime.Now.ToUniversalTime().ToString("MM/dd/yyyy"));
虽然上面的代码适用于其他字段类型(string,int,OptionSet等),但我尝试设置日期值的方式似乎有错误。
附注:我不使用dynamic
,因为在MS CRM在线环境中部署时似乎不起作用(但在本地工作)。
答案 0 :(得分:1)
您正在将日期格式化为字符串,因此它正在尝试将字符串传递到Javascript Date字段。只需将其作为DateTime传递即可。 ScriptObject类旨在从.Net正确转换为Javascript。 reference here
startdate.Invoke("setValue", DateTime.Now);