2015-01-11 8 views
1

이 fullcalender 웹 사이트의 결과물을 얻었지만 사이트를 새로 고칠 때 동일한 데이터가이 풀카 렌더러에 계속 추가됩니다. 이 문제를 해결하는 방법?웹 사이트를 새로 고칠 때 데이터베이스에서 데이터를 반복하지 않으려면 어떻게해야합니까?

$(document).ready(function() { 
     $.ajax({ 
      type: "POST", 
      contentType: "application/json", 
      data: "{}", 
      url: "FullCalender.aspx/GetEvents", 
      dataType: "json", 
      success: function (data) { 
       $('div[id*=fullcal]').fullCalendar({ 


        header: { 
         left: 'prev,next today', 
         center: 'title', 
         right: 'month,agendaWeek,agendaDay' 
        }, 
        editable: true, 
        events: $.map(data.d, function (item, i) { 
         var event = new Object(); 
         event.id = item.EventID; 
         event.start = new Date(item.StartDate); 
         event.end = new Date(item.EndDate); 
         event.title = item.EventName; 
         event.url = item.Url; 
         event.ImageType = item.ImageType; 
         return event; 
        }), eventRender: function (event, eventElement) { 
         if (event.ImageType) { 
          if (eventElement.find('span.fc-event-time').length) { 
           eventElement.find('span.fc-event-time').before($(GetImage(event.ImageType))); 
          } else { 
           eventElement.find('span.fc-event-title').before($(GetImage(event.ImageType))); 
          } 
         } 
        }, 
        loading: function (bool) { 
         if (bool) $('#loading').show(); 
         else $('#loading').hide(); 
        } 
       }); 
      }, 
      error: function (XMLHttpRequest, textStatus, errorThrown) { 
       debugger; 
      } 
     }); 
     $('#loading').hide(); 
     $('div[id*=fullcal]').show(); 
    }); 
    function GetImage(type) { 
     if (type == 0) { 
      return "<br/><img src = 'Styles/Images/attendance.png' style='width:24px;height:24px'/><br/>" 
     } 
     else if (type == 1) { 
      return "<br/><img src = 'Styles/Images/not_available.png' style='width:24px;height:24px'/><br/>" 
     } 
     else 
      return "<br/><img src = 'Styles/Images/not_available.png' style='width:24px;height:24px'/><br/>" 
    } 

</script> 
<div id="loading">`enter code here` 
    <img src="../images/loading_wh.gif" /> 
</div> 
<div id="fullcal"> 
</div> 

Public Shared Function GetEvents() As IList  
     Try 
     Dim sqlCS As String = "Data Source=" & DatabaseServerName & ";initial catalog=" & DatabaseCatalog & ";User ID=" & DatabaseServerUser & ";PASSWORD=" & DatabaseServerPass 
     SqlCn = New SqlClient.SqlConnection 
     SqlDA = New SqlClient.SqlDataAdapter 
     SqlCn.ConnectionString = sqlCS 
     If SqlCn.State = ConnectionState.Closed Then SqlCn.Open() 
     SqlCMD = New SqlCommand("SELECT distinct Cust_FNameA, Cust_dob FROM NewCus where DATEDIFF(DAY, GETDATE(), DATEADD(YEAR, DATEDIFF(YEAR, Cust_dob, GETDATE()), Cust_dob)) BETWEEN 0 AND 30", SqlCn) 
     SqlDA.SelectCommand = SqlCMD 
     SqlDA.Fill(dt2) 
     Dim events As IList = New List(Of [Event]) 

     For k As Integer = 0 To DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month) 
      events.Clear() 

      HttpContext.Current.Session("mydata") = dt2 
      Dim dtt As DataSet = DirectCast(HttpContext.Current.Session("mydata"), DataSet) 
      For Each r As DataRow In dtt.Tables(0).Rows 

       Dim dt As DateTime = CDate(r("Cust_dob")).ToString("MM-dd") 
       Dim s As String = dt.Day.ToString() 
       Dim s1 As String = dt.Month.ToString() 

       If DateTime.Now.AddDays(k).ToString("MM-dd") = dt Then 

        events.Add(New [Event]() With { _ 
        .EventName = r("Cust_FNameA").ToString() + " _ " + "عيد ميلاد", _ 
        .StartDate = DateTime.Now.AddDays(k).ToString("MM-dd-yyyy"), _ 
        .EndDate = DateTime.Now.AddDays(1).ToString("MM-dd-yyyy") _ 
     }) 

       End If 
      Next 
     Next 
     Return events 
    Catch ex As Exception 
    Finally 
     SqlCMD.Dispose() 
     SqlDA.Dispose() 
    End Try 

이 문제를 어떻게 극복 할 수 있는가? 데이터를 덮어 쓰지 않으려면 어떻게해야합니까?

cache: false 

는 또한 참조 :

+0

가 삽입 –

+0

후 페이지를 리디렉션하는 방법, 내가 당신을 얻을 캔트? –

+0

문제가 서버 측이 아니라 클라이언트 측에 있다고 생각합니다. 고객 측에서하는 일을 우리에게 보여줄 수 있습니까? –

답변

관련 문제