【发布时间】:2014-07-26 21:41:45
【问题描述】:
我有一个采用这种布局的 SQL Server 数据库
Table ( Giftee int
UserEmail varchar (100)
BDayDate Date()
);
我想将它连接到 FullCalendar 以创建全天活动。我不需要开始和结束时间。我正在尝试将“Giftee”值用作完整日历的“id”和“title”字段。我还尝试使用“BDayDate”作为完整日历的“开始”日期。
我一直在使用这篇文章作为参考。
Creating a JSON result from SQL server database
我有一个 Events.cshtml 页面,其中包含:
@{ var origin = new DateTime(1970, 1, 1, 0, 0, 0, 0);
var db = Database.Open ("table");
var zach = WebSecurity.CurrentUserName;
var sql = "SELECT BDayDate, Giftee FROM Giftee_Info WHERE UserEmail = @0";
var result = db.Query(sql, zach);
var data = result.Select(x => new
{
id = x.Giftee,
title = x.Giftee,
start = x.BDayDate.ToString("yyyy-MM-dd"),
allDay = true
}).ToArray();
Json.Write(data, Response.Output);
Response.ContentType = "application/json";
}
我还有一个单独的 Calendar.cshtml 页面来连接到 Events.cshtml 页面。日历页面包含以下代码:
<script> $(document).ready(function() {
$('#calendar').fullCalendar({
editable: false,
events: '/Events.cshtml'});
}); </script>
当我测试日历时,它可以正确打开,但不显示当前在 SQL 表中的任何日期。我不确定代码哪里出错了。有什么我需要更改或添加的吗?我不确定我的日历页面和事件页面是否正确连接。
【问题讨论】:
-
如果您的问题还没有解决,您可以尝试使用 CurrentCulture 的 CultureInfo 作为您的日期:start = x.BDayDate.ToString(CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern),跨度>
-
@ScottProkopetz 感谢您的意见。上面的代码实际上是正确的。我在Events.cshtml页面中留下了html,导致报错。
标签: c# sql json razor fullcalendar