1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu Connecting to Exchange or Outlook ppt

3 336 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Connecting to Exchange or Outlook
Tác giả Team LiB
Trường học Not Available
Chuyên ngành Computer Science
Thể loại Hướng dẫn
Năm xuất bản Not Available
Thành phố Not Available
Định dạng
Số trang 3
Dung lượng 16,26 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

[ Team LiB ]Recipe 1.10 Connecting to Exchange or Outlook Problem You want to use ADO.NET to extract data from Microsoft Outlook or Microsoft Exchange.. Solution Use the OLE DB Jet pr

Trang 1

[ Team LiB ]

Recipe 1.10 Connecting to Exchange or Outlook

Problem

You want to use ADO.NET to extract data from Microsoft Outlook or Microsoft

Exchange

Solution

Use the OLE DB Jet provider to access Exchange and Outlook data

The sample code contains two event handlers:

Form.Load

Displays a form that allows the user to specify the mailbox name and mail profile

to connect to

Connect Button.Click

Creates and opens a connection to Outlook or Exchange data using the OLE DB

.NET data provider A DataAdapter is used to fill a table with the Subject and

Content of each message in the Inbox The default view of the table is bound to a

data grid on the form

The C# code is shown in Example 1-8

Example 1-8 File: ConnectExchangeDataForm.cs

// Namespaces, variables, and constants

using System;

using System.Windows.Forms;

using System.Data;

using System.Data.OleDb;

//

private void ConnectExchangeDataForm_Load(object sender,

System.EventArgs e)

{

mailboxNameTextBox.Text = "Personal Folders";

profileTextBox.Text = "Outlook";

Trang 2

}

private void connectButton_Click(object sender, System.EventArgs e)

{

String sqlText = "SELECT Subject, Contents FROM Inbox";

// Build the connection string

String connectionString="Provider=Microsoft.Jet.OLEDB.4.0;" +

"Outlook 9.0;" +

"MAPILEVEL=" + mailboxNameTextBox.Text + "|;" +

"PROFILE=" + profileTextBox.Text + ";" +

"TABLETYPE=0;" +

"DATABASE=" + System.IO.Path.GetTempPath( );

// Create the DataAdapter

OleDbDataAdapter da = new OleDbDataAdapter(sqlText, connectionString);

// Create and fill the table

DataTable dt = new DataTable("Inbox");

try

{

da.Fill(dt);

dataGrid.DataSource = dt.DefaultView;

}

catch(Exception ex)

{

MessageBox.Show("ERROR: " + ex.Message);

return;

}

}

Discussion

The NET data provider for OLE DB does not support OLE DB Version 2.5 interfaces including the Microsoft OLE DB Provider for Exchange The Jet OLE DB provider can access an Outlook or Exchange store An example of the connection string:

Microsoft.Jet.OLEDB.4.0;Outlook 9.0;MAPILEVEL=Personal Folders|;

PROFILE=Outlook;TABLETYPE=0;DATABASE=c:\temp;

The connection string attributes-and-value pairs are described in Table 1-1

Table 1-1 Outlook or Exchange connection string attributes

Trang 3

Element Description

Database

name

DATABASE=path

With an Identifier of Outlook 9.0, the path to store temporary system tables

With an Identifier of Exchange 4.0, the path and filename to a Microsoft Access database in which to store temporary system tables

Identifier

Outlook 9.0 to connect to Outlook 2000 and later

Exchange 4.0 to connect to Exchange 4.x and 5.x

Password

PASSWORD=password

Outlook or Exchange password This parameter is not required if your

network logon password is passed to the Outlook or Exchange server This parameter is optional

Profile

name

PROFILE=profile

The name of the Outlook or Exchange profile to use If this not specified, the default profile is used

Table

path

MAPILEVEL=<storage>|<folderPath>

<storage> is the exact mailbox name on the server, a personal folder, or

public folder as it appears in the Outlook Folder list

<folderPath> is the path to the folder immediately above the folder to access using the SQL statement The folder path is required only when accessing folders below the top level of folders within the store; the pipe (|) character

is always required When listing nested folders, separate each folder name with a backslash (\)

Table

type

TABLETYPE=0 for folders (default value)

TABLETYPE=1 for address books

[ Team LiB ]

Ngày đăng: 24/12/2013, 05:15

TỪ KHÓA LIÊN QUAN