名前、生年月日、追加ボタンを使用してユーザーの性別情報を追加するためのコントロールを含む1つのWebフォームを作成しました。追加ボタンをクリックすると、その情報がデータベースに移動します。しかし、私は私のメールボックスを持っています、例えば。Gmailの一部のメールは、以前と同じ情報(名前、生年月日、性別など)を含む受信トレイに届きます。それで、その受信トレイデータをデータベースに転送する機能を使用できますか?
質問する
263 次
1 に答える
0
はい-できます。
Gmailアカウントの確認を簡単にするために活用できるライブラリはたくさんあります。これが1つだけです: http ://sourceforge.net/projects/hpop/
すべての電子メールをフェッチするためのサンプルコードは次のとおりです。
public static List<Message> FetchAllMessages(string hostname, int port, bool useSsl, string username, string password)
{
// The client disconnects from the server when being disposed
using (Pop3Client client = new Pop3Client())
{
// Connect to the server
client.Connect(hostname, port, useSsl);
// Authenticate ourselves towards the server
client.Authenticate(username, password);
// Get the number of messages in the inbox
int messageCount = client.GetMessageCount();
// We want to download all messages
List<Message> allMessages = new List<Message>(messageCount);
// Messages are numbered in the interval: [1, messageCount]
// Ergo: message numbers are 1-based.
// Most servers give the latest message the highest number
for (int i = messageCount; i > 0; i--)
{
allMessages.Add(client.GetMessage(i));
}
// Now return the fetched messages
return allMessages;
}
}
それでも、それぞれを調べて、それがデータベースに対して有効かどうかを判断してから、データを取得してデータベースに挿入する必要があります。しかし、それはかなり簡単なはずです(そしてあなたがすでに行っていることとほとんど同じです)
Gmailの場合、次を使用してメールを取得できます。
List<Message> myMail = FetchAllMessages("pop.gmail.com", 995, true, "MyEmail@gmail.com", "mysupersecretpasswordshhhhh!");
于 2012-06-01T07:40:37.007 に答える