Подчеркните связующую модель струны

У меня сложилось впечатление, что при привязке к сложной модели все открытые свойства были обработаны, и для каждого была сделана привязка соответствия.

Я пытаюсь решить проблему именования переменных, чтобы модель

class Model {
      public string Foo {get;set;}
      public string FooBar {get;set;}
}

хорошо работает со строкой запроса, как

?foo=foo&foo_bar=foo_bar

Есть ли лучший способ, чем с пользовательским модельным переплетом? В любом случае, мой нет работа. FooBar просто пропущен.

public class StringModelBinder : DefaultModelBinder
    {
        public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
        {
            var model = base.BindModel(controllerContext, bindingContext);

            if (model != null)
                return model;

            var modelName = Regex.Replace(bindingContext.ModelName, "([a-z])([A-Z])", "$1_$2").ToLowerInvariant();

            var value = bindingContext.ValueProvider.GetValue(modelName);

            return value;
        }

    }

Зарегистрирован с

ModelBinders.Binders.Add(typeof(string), new StringModelBinder());

Ответы на вопрос(1)

Ваш ответ на вопрос