I added the "Serializable()" features into my AppointmentExtendedInfo class and I able to save the appointments into my database. But after I closing the application and reopen, there are no appointments showed in my calendar. I checked my database, the data are still there.
What happen? Is that I missing any codes to regenerate the appointments from the "All properties" bytes?
No, you don't have to code the retrieval of the appointments from the AllPropertiesMember field, they should reappear. See if you can replicate the behavior with the WinSchedule Database Demo sample that ships with the product, or attach a small sample that demonstrates the problem and we can try to help.
Also, you should try setting the debugger to allow handled exceptions to be throwm; it would seem possible that there is a problem on the deserialization end which is causing an exception to be thrown, thus preventing the retrieval of the Appoiontment objects.
The attachment are my project file in C#.
I also found that when I click the "All Appointments" in the menu, it return me empty screen as well. But later when I checked the database one more time, the records still there.
Thanks for helping.
The problem is that the appointment dialog does not have support for associating the Appointment with an Owner (I think the Outlook2003AppointmentDIalog sample was written before owner support was added).
You canm modify the dialog's Show method to take an Owner, and pass the DayView's ActiveOwner property to it when you show the dialog. Assign a reference to that owner to a form-level variable in the dialog class, then asign that owner to the appointment in the SaveAppointment method.
The attachment file is my latest project file in C#.
I already added the owner support into the project, but the problem still the same.
For your information, I am not referring the problem that the appointments were not saving under the particular owner before I added the owner support in the "Outlook2003AppointmentDIalog". For that problem actually I still able to find the appointments under the "unassigned" owner.
But now the problem that I am talking is the appointments are totally missing in the calendar (both unassigned and particular owners) after I close the my application (commit to the database) and reopen it. When I go to check my SQL server, the records are there.
Please note that the calendar is able to show all the appointments after I press my "SAVE and CLOSE" button in the "Outlook2003AppointmentDIalog". Just after I close the application, all gone.
I was not able to reproduce that behavior. Once I addressed the issue of the Owner not being assigned to the Appointment, after closing the application and committing the changes to the database, the appointments were there as expected when I ran the application a second time. Since the application you attached as-is provided no way of observing the unassigned owner's appointments, it might help to know how you came to the conclusion that the appointments were missing.