问题
var store = await ContactStore.CreateOrOpenAsync();
StoredContact sc = new StoredContact(store);
IDictionary<string, object> values = await sc.GetPropertiesAsync();
values[KnownContactProperties.FamilyName] = "bbb";
values[KnownContactProperties.GivenName]= "worerrrrld";
//*************problem here**************
Nullable<DateTime> birth = DateTime.Now;
values[KnownContactProperties.Birthdate] = birth;
//values[KnownContactProperties.Birthdate] = DateTime.Now;
//values[KnownContactProperties.Birthdate] = "2010-05-10";
//it will cause exception by any way above.
//***************************************
await sc.SaveAsync();//Exception throw here :System.InvalidCastException
About windows phone8 API
Windows.Phone.PersonalInformation namespace
It's too weird about Class StoredContact!
Can any body help me! How to set this KnownContactProperties.Birthdate?
回答1:
The InvalidCastException is normal since the expected object is DateTimeOffset.
Try this:
values[KnownContactProperties.Birthdate] = new DateTimeOffset(DateTime.Parse("2010-05-10"));
Regards.
来源:https://stackoverflow.com/questions/14376342/wp8-knowncontactproperties-birthdate-can-not-set-value