2012-02-09 15 views
6

Sto lavorando alla funzione "Aggiungi al calendario" dalla mia web part di Sharepoint (creata utilizzando VS2010).L'importazione di ICal crea un nuovo calendario Quando si apre il file ics

Ho esportato il file ICS in modo programmatico senza problemi.

Ma il problema si verifica quando provo ad aprire il file ICS da OUTLOOK.

Se il file ICS ha solo appuntamento, nessun problema ....

Se il file ICS ha più appuntamenti, il problema arriva ...

Quando io File >> Aprire >> Import >> Scegli file ics, funziona benissimo

Ma se provo a raddoppiare basta cliccare sul file ICS, si crea un nuovo calendario, invece di aggiornare il mio attuale calendario predefinito

Qualche suggerimento ...?

risposta

3

Vedere this SO post che suggerisce che Outlook supporterà più eventi che utilizzano ICS come feed or subscription - non direttamente come singola importazione di ICS.

+0

grazie sliverninja, in modo che significa che non possiamo ottenere questa funzionalità ??? – user1199808

+0

È necessario implementare i workaround: eseguire lo script di ciascun evento del calendario in file ICS separati o utilizzare un feed di sottoscrizione ICS. Questa è una limitazione del supporto di Outlook per ICS con più eventi. – SliverNinja

+0

puoi darmi un esempio? im usando la risposta dell'intestazione http per esportare il file ics. supporta per importare il file solo una volta ... HERE è il mio codice di esempio .. private void WriteCalendar (String dati) { HttpResponse resp = Page.Response; res.Clear(); res.Buffer = true; res.ContentType = "text/calendar"; res.ContentEncoding = Encoding.UTF8; res.Charset = "utf-8"; res.AddHeader ("Content-Disposition", "attachment; filename = \" Events.ics \ ""); res.Write (dati); res.End(); } – user1199808

14

Abbiamo riscontrato un problema simile e abbiamo rilevato che se il file ICS conteneva il campo X-WR-CALNAME, anche se era vuoto, Outlook crea automaticamente un nuovo calendario. Se NON aveva questo campo in esso, quindi Outlook lo ha importato.

+0

Questo è un commento eccellente! – whitehat101

+2

esattamente quello di cui avevo bisogno.Rimuovere X-WR-CALNAME ha funzionato per me. – brianm

+0

Esattamente quale era il nostro problema anche. – Aravona

3

Ho avuto lo stesso problema. Quando si fa clic su un file .ics, Outlook crea un nuovo calendario piuttosto che aggiornare un calendario esistente.

Ho risolto questo con l'aggiunta di questo descrittore nel file .ics:

X-WR-RELCALID:XXXXXX 

dove XXXXXX è un valore unico per il calendario. Outlook ti chiederà quindi di sostituire il calendario, anziché aggiungerne uno nuovo.

Il descrittore è stato trovato sul http://en.wikipedia.org/wiki/ICalendar

+0

X-WR-RELCALID: XXXXXX - questa dovrebbe essere la risposta alla domanda (e alcune altre correlate). Aggiungendo questa linea al mio file ics viene aggiornato l'intero calendario (dopo un prompt in Outlook). Non è nemmeno necessario modificare DTSTAMP o SEQUENCE o ORGANIZER e METHOD: PUBLISH va bene per l'aggiornamento. Basta aggiornare i dettagli dell'evento e il calendario si aggiornerà. Nota che funziona anche se hai pubblicato il calendario e hai fornito un URL per le persone per vederlo. Devono solo eseguire il refresh dopo circa 2 minuti e riceveranno anche l'aggiornamento. –

+0

dove posso trovare l'id del calendario per sostituire XXXXXX? tnx – masciugo

Problemi correlati