I am outlining the steps I took for creating solutions from scratch for use with building Arena modules. For this document I will assume you are using Visual Studio 2008 (it’s what I have, sorry), but the 2005 setup should be almost identical.
- Create a new project in VS.
- Select the .NET Framework 3.5 version.
- For your Project Type select Visual C#->Windows->Class Library.
- For a project name I enter “Library”, and then change the Solution name to the standard Arena.Custom.<ORGID>.<PROJECT> (for example, “Arena.Custom.HDC.CheckIn”).
- Also enter whatever path you want to save the solution in.
Now that you have a basic solution ready, you will probably want to delete the Class1.cs file unless you want to use it as a starting point for any .DLL code (I don’t, when I am ready to build DLL code I will use my own files).
- Browse to your solution folder in Windows Explorer (you should see your solution file and a “Library” folder).
- Create a new folder called “UserControls” (you can use another name, but this is where all my custom UserControls will go).
- Back in VS right-click on your solution and say Add Existing Website.
- Select that UserControls folder you just created.
- Now you will need to add some references to Arena.
- Right click on the empty website and Add Reference. Go pick your Arena.Framework.dll and Arena.Portal.UI.dll. You will also need to add a reference to System.Core.dll.
- This will copy a bunch of files into a “bin” sub-directory under UserControls. That is fine, just collapse that. You need to keep it around, but you don’t need to see it. It should also add a Web.config, ignore that too but do not delete it.
If you have installed the “Arena Basic User Control” (talk to Nick at CCCEV for this) you can Add New Item to your website and select the Arena control (make sure the language is set to C# or it won’t show up). Otherwise you will need to add new items as Web User Controls.
You now have a working solution that builds only the stuff you are working on. I find this to be a much better solution (no pun intended) than using the “full blown” solution with the Arena Developer Kit. I like being more departmentalized and being able to show only the stuff I am working on.