Как я могу удалить магические строки из пользовательских папок модели? - PullRequest
5 голосов
/ 04 октября 2010

Я написал пару пользовательских связывателей моделей и понял, что попал в ловушку, полагаясь на магические струны, например:

    if (bindingContext.ValueProvider.ContainsPrefix("PaymentKey"))
    {
        paymentKey = bindingContext.ValueProvider.GetValue("PaymentKey").AttemptedValue;
    }

Я хотел бы иметь возможностьиспользовать выражение для строгого ввода имен префиксов, но не могу понять, как, и был бы признателен за некоторую помощь.

Спасибо.

1 Ответ

1 голос
/ 04 октября 2010

Что вы ищете, это bindingContext.ModelName, чтобы ваш код мог стать:

 if (bindingContext.ValueProvider.ContainsPrefix(bindingContext.ModelName))
    {
        paymentKey = bindingContext.ValueProvider.GetValue(bindingContext.ModelName).AttemptedValue;
    }
...