2010-10-26 16 views
10

DDay.iCal kullanarak temel takvim etkinliği oluşturdum, "Takvime ekle" bağlantısını tıklattığımda bir olay oluşturup bunu istemciye gönderir. ICalendar olayını istemciye göndermeye devam ederken kodunuzu devam ettirmeye devam ederken

Temelde, başvurum bu gibi çalışır.

  1. bir kullanıcı günlükleri içinde.
  2. belirli bir tarih seçer.
  3. Kitaplar müşteriye aşağıdaki gönderir
  4. olayı Gönderme "Takvime ekle" bağlantısını

Response.Write() kullanılarak yapılır Tıklanma belirli zaman aralığı:

Response.ContentType = "text/calendar"; 
Response.AddHeader("Content-disposition", "attachment; filename=appointment.ics"); 
Response.Write(iCalString); 

yukarıdaki eserleri yüzgeçleri ancak ilk önce etkinliği daha sonra manuel olarak kitaplamamı ve ardından "Takvime ekle" bağlantısını tıklamamı gerektirir.

3 ve 4 numaralı adımları birleştirmek istiyorum. Ancak bunu yapmaya çalışırken etkinlik rezervasyonu veritabanına kaydedilir ancak ekran yenilenmez.

Bunu aşmanın "basit" bir yolu var mı?

cevap

1

Sen yanıt gönderebilmek için basit HttpHandler kurmak gerekir ve sonra içine() bir Response.Redirect yapmak.

Ben bir web sitesinin bir halkımız bölüme vcard biçimi entegre ile önce benzer çalışma yaptık. Bu makaleler HttpHandler'ı kurmak için ihtiyacınız olan her şeyi size söylemelidir - sadece vcard kodunu ical kodunuzla değiştirin.

bunu sadece anında indirme kutusu açılır ical işleyicisi içine yönlendirmek

  • http://weblogs.asp.net/gunnarpeipman/archive/2009/08/09/creating-vcard-with-image-in-net.aspx
  • 1

    iCal yanıt bilgisini göndermeden önce yanıtınızı (Response.Clear) temizlediğinizden emin olun. Son olarak, başka bir içerik yayınlanmadan önce yanıtınızı (Response.End) sonlandırın. Son kullanım açısından bu, bir HttpHandler'un, güçlük olmadan kullanılmasının aynı sonucunu üretecektir.

    İlgili konular