jQuery事件日历和Microsoft Azure问题 - javascript

最近,我在这里提出了一个与我的日历项目有关的问题,并取得了良好的效果,因此我想请教另一个问题。

这是我正在关注的教程
http://www.dotnetawesome.com/2017/07/curd-operation-on-fullcalendar-in-aspnet-mvc.html

不幸的是,当涉及到该项目时,我丢失了我最近正在处理的代码。但是我只是想知道在重新开始编码之前:为什么使用Azure数据库时事件未加载到日历(jquery和javascript)上?具体来说,发布后事件不会加载。当我使用常规sql数据库时,它们将加载,但在使用Azure sql数据库时,它们将不加载。我找不到关于类似问题的任何信息,并且很好奇这是否可能与Json有关?

以下是从后端获取事件的代码段:

FetchEventAndRenderCalendar();
        function FetchEventAndRenderCalendar() {
            events = [];
            $.ajax({
                type: "GET",
                url: "/home/GetEvents",
                success: function (data) {
                    $.each(data, function (i, v) {
                        events.push({
                            eventID: v.EventID,
                            title: v.Subject,
                            description: v.Description,
                            start: moment(v.Start),
                            end: v.End != null ? moment(v.End) : null,
                            color: v.ThemeColor,
                            allDay: v.IsFullDay
                        });
                    })

我现在无法调试,但也许我会尝试仅输入部分代码,以便我可以测试为什么正是使用azure数据库才能做到这一点,以便事件不会加载到日历上。

参考方案

当我使用Azure数据库时,为什么事件未加载到日历(jquery和javascript)上?

我从您提到的教程中下载了demo code。然后,我将其更改为使用Azure SQL,并且可以正常工作。

如果在本地运行应用程序,则需要将客户端IP添加到Azure SQL防火墙,以使客户端可以访问Azure SQL。我们可以从this tutorial获取有关Azure SQL防火墙的更多信息。

jQuery事件日历和Microsoft Azure问题 - javascript

以下是我的详细步骤:

1.将连接字符串替换为Azure SQL连接字符串

<connectionStrings>
     <add name="MyDatabaseEntities" connectionString="Server=tcp:sqlservername.database.windows.net,1433;Initial Catalog=databasename;Persist Security Info=False;User ID={user};Password={password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" providerName="System.Data.Sqlclient" />
</connectionStrings>

2.在Azure sql数据库中使用给定的事件表创建具有相同架构的表。

3.删除与localdb和MyModel.xx相关的文件

4.添加Event.cs和MyDatabaseEntities.cs文件

  public class Event
{
    public int EventID { get; set; }
    public string Subject { get; set; }
    public string Description { get; set; }
    public System.DateTime Start { get; set; }
    public Nullable<System.DateTime> End { get; set; }
    public string ThemeColor { get; set; }
    public bool IsFullDay { get; set; }
}
public partial class MyDatabaseEntities : DbContext
    {
        public MyDatabaseEntities()
            : base("name=MyDatabaseEntities")
        {
        }
        public virtual DbSet<Event> Events { get; set; }
    }

项目文件结构:

jQuery事件日历和Microsoft Azure问题 - javascript

5.在本地测试,它可以正常工作。

jQuery事件日历和Microsoft Azure问题 - javascript

javascript popupwindow之后的行如何工作? - javascript

好的,我有一个来自后面代码的方法,可以创建一个popupwindow。然后有一行代码要在那之后执行,我想知道那行代码何时执行,是在使用popupwindow之后执行还是在创建popupwindow之后执行?例如:void exPopupWindowMethod() { string scr = "window.open('exampleP…

Javascript-Urls的奇怪字符串比较行为 - javascript

最近,在编写我无法理解的javascript时遇到了字符串比较的问题。我从完全相同的网址创建了两个字符串,当我比较它们时返回false,但是在重新分配相同的字符串后,比较返回true。这是我的示例:var str1 = "http://google.com/"; var str2 = "http://google.com‏/&#…

Javascript-从当前网址中删除查询字符串 - javascript

单击提交按钮后,我需要从网址中删除查询字符串值。我可以用jQuery做到这一点吗?当前网址:siteUrl/page.php?key=value 页面提交后:siteUrl/page.php 实际上,我已经从另一个带有查询字符串的页面着陆到当前页面。我需要在页面首次加载时查询字符串值以预填充一些详细信息。但是,一旦我提交了表格,我就需要删除查询字符串值。我已…

Mongo汇总 - javascript

我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …

从控制器以视图(javascript)访问会话 - javascript

这是我的控制器代码。我想获取视图中存储在会话中的值(JavaScript代码) decimal.TryParse(permotion.PROMOTION_AMOUNT.ToString(), out promotionAmount); int.TryParse(permotion.PROMOTION_TYPE_ID.ToString(CultureInfo.…