I have a question about your exception model. I'm fairly new to your software so this might be more important to me than to most. There have been times when I've done something wrong (usually it's when I've refactored something), but rather than the ThinkGeo software telling what I've done wrong, the error happens after all my code has executed and gets caught in mscorlib. Certainly, the error has been mine, but it seems that the errors I'm causing would be fairly simple for the map software to check rather than just letting it propogate. And then by the time it gets to mscorlib, I get some fairly meaningless error like "The supplied key isn't in the dictionary." or "Input was not in the correct format.".
The times that I've noticed this that I can remember include:
Having an incorrect column name on the feature (same as not having the column, I guess)
Not realizing that a string I used was going to be converted to a number. (I can't recall exactly what caused that one, but my co-worker and I each individually raised it.)
I put a 0 in for an int as the final value in a constructor (sorry I don't remember where that was and I must have refactored that code away). It turned out that the range started at 1, but again I got some weird windows error.
I think there was at least one other case, but I don't recall it. In any case, I'm wondering why you don't fail earlier? I'm trying to make sure I add unit tests to my code when I run into this, but from the point of view of learning, it would be rather nice to get an error telling me that the column I referenced doesn't exist. As I mentioned, it's usually when I refactor something and I have a habit of thinking my refactored code should work exactly the same as it did before. :-D
Thank you!
Kimberly