我正在开发一个ASP.NET MVC应用程序,我使用一个infragistics网格来显示数据,我有一个日期格式列,我可以显示几种格式。在我的.NET服务器端,我存储的格式如下:
{0:d}
{0:D}
{0:G}
{0:s}
我的infragistics JavaScript网格只能理解这种格式:
dd/mm/yyyy
dddd d MMMM yyyy
...
...
我想知道如何在不进行棘手的字符串操作的情况下将.NET格式转换为简单的JavaScript格式。
没有本地转换器可以从此{0:d}
传递到c#中的dd/mm/yyyy
。
提前感谢您的帮助
答案 0 :(得分:3)
使用DateTime
格式化var s = myData.type.ToString("dd/MM/yyyy");
值。
<ImageView
android:layout_width="10dp"
android:layout_height="wrap_content"
android:id="@+id/medication_administration_time_row_fmk_icon" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/medication_administration_time_row_fmk_icon"
android:id="@+id/medication_administration_time_row_drug" />
有关详细信息,请参阅Custom Date and Time Formats。
答案 1 :(得分:0)
在这里你去^^让我们创建自定义转换器
public class DateTimeConverter : JavaScriptConverter
{
public override object Deserialize(IDictionary<string, object> dictionary, Type type, JavaScriptSerializer serializer)
{
throw new NotImplementedException();
}
public override IDictionary<string, object> Serialize(object obj, JavaScriptSerializer serializer)
{
return new Dictionary<string, object> { { "", ((DateTime)obj).ToString("dd/MM/yyyy") } };
}
public override IEnumerable<Type> SupportedTypes { get { return [] { typeof(DateTime) }; } }
}
然后让我们创建自定义的JsonResult类。
public class CustomJsonResult : JsonResult
{
public override void ExecuteResult(ControllerContext context)
{
if (context == null)
{
throw new ArgumentNullException("context");
}
HttpResponseBase response = context.HttpContext.Response;
if (!string.IsNullOrEmpty(this.ContentType))
{
response.ContentType = this.ContentType;
}
else
{
response.ContentType = "application/json";
}
if (this.ContentEncoding != null)
{
response.ContentEncoding = this.ContentEncoding;
}
if (this.Data != null)
{
JavaScriptSerializer serializer = new JavaScriptSerializer();
serializer.RegisterConverters(new [] { new DateTimeConverter () });
response.Write(serializer.Serialize(this.Data));
}
}
}
在基本控制器中覆盖Json方法以返回CustomJsonResult
public class BaseController : Controller
{
protected override JsonResult Json(object data, string contentType, Encoding contentEncoding, JsonRequestBehavior behavior) {
return new CustomJsonResult{
Data = data,
ContentType = contentType,
ContentEncoding = contentEncoding
};
}
}
然后让我们返回我们的自定义Json格式
public class AppController : BaseController
{
public ActionResult MyAction()
{
//Assuming there's a variable called data
return Json(data,JsonBehavior.AllowGet);
}
}