The purpose of this exercise is to create a simple web based application. Please note that there is no right or wrong answer. Our interest is in seeing how you approach a simple development task. Your result will be reviewed by a Senior Developer and will serve as the basis for further technical discussion(s).
Please adhere to the following technical constraints:\
- The application should be presented in a web based interface
- It should be runnable using any .NET compatible web server
The requirement or user story is not complete until the following items have been met:
- Your implementation should meet the acceptance criteria below
- Your response must include all source code.
"As a site admin, I want any user to be able to sign up to a newsletter on our site by completing a simple form"
- The form should capture their email address, how they heard about us, and their reason for signing up (optional)
- "How they heard about us" should be limited to "Advert", "Word of Mouth" or "Other"
- The form should only accept valid email addresses
- An email address cannot be signed up more than once
- The user gets feedback when form submission does not meet the criteria
- Upon submission of a valid form the data is persisted to a database
- The user gets feedback that he/she has been signed up to the newsletter