1

MAPIを使用してOutlookの連絡先を作成する古いVB6アプリケーションがあり、それをVB.NET2010に変換中です。

VB6アプリケーションを使用すると、ItemPropertiesプロパティを使用して名前でプロパティにアクセスできます。次に例を示します。

objContact.ItemProperties(strPropertyName) = "Accountant"

拡張プロパティリストItemPropertiesで確認できますが、アクセス方法がわかりません。他の投稿は、既存の連絡先の拡張プロパティにアクセスする方法を示していますが、新しい連絡先を作成しようとしています。

MAPIのようにプロパティを動的に設定することは可能ですか?そうでない場合は、非常に大きなCASEステートメントになります。

Select Case strPropertyName
 Case "JobTitle"
  ...
 Case "Title"
  ...
End Select
4

1 に答える 1

0

ContactEWS でを作成し、 を使用する簡単な例を次に示しExtendedPropertiesます。メソッドを利用SetExtendedPropertyして、適切な を渡す必要がありますExtendedPropertyDefinition

var titleDef = new ExtendedPropertyDefinition(0x3A45, MapiPropertyType.String);

Contact contact = new Contact(service);
contact.GivenName = "George";
contact.Surname = "Washington";
contact.FileAsMapping = FileAsMapping.SurnameSpaceGivenName;
contact.CompanyName = "U.S.A";
contact.PhoneNumbers[PhoneNumberKey.BusinessPhone] = "555-234-1231";
contact.EmailAddresses[EmailAddressKey.EmailAddress1] = "asdfas@dafasd.com";
contact.EmailAddresses[EmailAddressKey.EmailAddress1].Name = "G. Washington";
contact.SetExtendedProperty(titleDef, "President");
contact.Save();
var contactID = contact.Id;
于 2012-05-29T13:29:39.113 に答える