I am creating a public website which features its own domain title with pop/smtp mail services. I am thinking about giving customers the choice to update their data via email - something such as the functionality present in Flickr or Blogger in which you email posts a unique current email address. The e-mail information is then processed and saved within the underlying database for that website.

I am using ASP.Internet and SQL Server and taking advantage of a hosting that is shared service. Any ideas how you might implement this, or maybe it's even possible using hosting that is shared?


To begin with you must have hosting that enables you to produce a catch-all mailbox.

Next you'll need a good POP3 or IMAP library, which isn't incorporated AFAIK within the .Internet stack.

You would then write an order Line application or perhaps a Service that regularly inspections the mailbox, pulls messages, card inserts content in db in line with the "To" address (that is unique for every user), after which removes the e-mail in the mailbox.

It's achievable and seems like fun. Just make certain you've all that's necessary before you begin!

When the information is somewhat "critical", or at best moderately important, don't use their username because the "change-data-address". Example: You may be enticed to produce a previous address like username@domain.com, but rather use username-randomnumer@domain.com in which you provide them with the random number when the go to the web-page. This way people can't update other bands data simply by knowing their username.

E-mails could be trivially forged. I'd only do that if you're able to process PGP / SMime certificates inside your application.

Apart from that, I see pointless why don't you!

make use of a dotnet popclient to see the incoming emails, parse them for anything you expect and place the information in to the database.

see codeproject website for straightforward popclient implementation you would need to made the decision around the email content yourself, eg data only, payload of sql claims, etc

You might identify the consumer according to sender address. This is the way Tripit (and most likely others) will it. This only requires one e-mail address in your finish.

I've done such like, using Lumisoft's IMAP client and arranging an activity during my application that inspections every x minutes the set up mail address for updates. For arranging I suggest quartz.net. No starting exterior processes or anything.