@kettch Thanks for the hints. I will try stackoverflow.com 

@PopeDai: We are trying to create a very flexible system so that when there are changes to the models we won' t have to change our code, just send new models with annotations to the webapp at run time.There are thousands of data points.

@cheong Thanks for the ideas. I thought about a custom model binder but this project is so complex for a newbie, never having coded in C# before!!, I was not sure how best to fit it in. Instead I played with the annotation DataTypeName and found that if I set it to ("Boolean") it created a checkbox! Wow and that is not even listed as an option for this field. With that I changed my dictionary back to <string, string> from <string, object> and now the StringLength annotation works as well.

Just one solution at the very beginning of a very long road to this model.

The next few tasks are preserving the fifo order of the key, value pairs in the model (they come out in a different order in the view after saving changes), and figuring out how to handle radio buttons and show disabled (non-editable) fields.