views:

110

answers:

2

I am looking either a low-cost (under 500$) developer license, or open-source survey / form generator tool. It has to be written in C# or VB.NET. These are the core features I need:

  • Ability to generate surveys with a list of questions on the fly
  • Multiple answer choices (freeform text, radiobutton, etc)
  • Users can fill out survey online
  • Results are emailed to an address, or saved to a database, or both
  • Bonus: Logic-based question skipping (ex: if you answered yes to 15, ask why)

Thanks in advance. Also if you have any insight at all to solutions in other languages, I would be interested. I know I could write my own version of this but I would love to hack someoene elses together instead.

+2  A: 

Perhaps a pre-built solution will suffice and save you from having to do any programming at all?

For example, SurveyMonkey

AdamRalph
sorry, not an option :<
Shawn Simon
what do you require that such a pre-built app cannot do?
AdamRalph
selling it to someone : ) we might actually go with survey monkey though
Shawn Simon
+2  A: 

NOTE: This will not answer your question directly (i.e. a full suite of tools available purely in C# or VB.NET), but it's a possible alternative that may suit your needs if your client has the resources available.

You may consider using Windows SharePoint Services (soon to be called SharePoint Foundation in 2010) as a platform for building and delivering surveys. SharePoint has rich survey functionality built-in, and with the ability to create custom web-parts using Visual Studio, you should be able to acheive your logic-based goal.

Regarding your core requirements:

  • Ability to generate surveys with a list of questions on the fly
    • You can decide who is allowed to create surveys and how they are presented internally to users. You can choose lots of options, such as whether their answers are submitted publicly or anonymously.
  • Multiple answer choices (freeform text, radiobutton, etc)
    • SharePoint has several answer type choices available.
  • Users can fill out survey online
    • By default, SharePoint is "online." However, it's best suited for a corporate intranet, though it can certainly be exposed as an extranet website as well.
  • Results are emailed to an address, or saved to a database, or both
    • A SharePoint user can be set up to be alerted every time a survey is filled out.
    • You can create custom alerts that hide/show what fields are in the alert message.
    • The database entries are stored in a list, which you can open in Excel or Microsoft Access. I believe you can access this data programmatically as well, but you might need MOSS to access it via straight MS SQL.
  • Bonus: Logic-based question skipping (ex: if you answered yes to 15, ask why)
    • I can't remember if logic is built-in out-of-the-box, but you should be able to create a logic-based survey using SharePoint Designer or Visual Studio.

A quick note on the difference between Windows Sharepoint Services (WSS) and Microsoft Office SharePoint Server 2007 (MOSS):

  • WSS is the "lightweight" version of SharePoint, but still offers most of its functionality.
    • WSS 3.0 comes free with Windows Server 2008 and can be set up free with Windows Server 2003.
    • If your client already has a Windows Server installation, SharePoint can be a great option since it integrates tightly with active directory.
    • I've used the survey feature in WSS on an external installation of WSS to do an internal survey of our sales team, and it was great. I used MS Access to query the data after it was done and present a clearn report to management.
  • MOSS is the big enterprise offering for SharePoint.
    • MOSS is targeted more towards big enterprise customers and is most likely unnecessary for the type of form or survey you are trying to build.
    • However, if you're working with a big client, they may already have MOSS installed.
Ben McCormack
thanks, this is definitely a possiblity
Shawn Simon