Я не использовал его много, но, насколько я понимаю, вы должны сначала настроить WebCrid MVC 3 перед его использованием. И вы не хотите настраивать таблицу в представлении, а вместо этого делаете это, используя атрибуты модели.
Если бы я сделал это, я бы сделал следующее:
Создайте свои пользовательские атрибуты, с помощью которых я буду украшать свою модель, чтобы определить, какие свойства являются столбцами, какие метки будут использоваться для заголовка столбца и все остальное, что вы хотите настроить.
Я сделаю статический класс со статическим методом, который принимает в вашей модели экземпляр, использует отражение, чтобы прочитать свойства и ваши пользовательские атрибуты, и оттуда он выплюнет WebGrid для использования в вашем представлении.
Вот как, но я скажу вам, почему я не сделал бы этого: в MVC вы украшаете свою модель для таких вещей, как валидация, и это здорово и декларативно. Но когда вы определяете сетку, это очень специфическая вещь. Конечно, вы можете использовать ViewModels, которые являются специфическими для вида, но я не думаю, что конфигурация макета таблицы принадлежит модели. То, как работает WebGrid или Telerik's Grid до его работы, уже хорошо декларативно.
Я рассказываю, что WebGrid и Telerik's Grid уже используют лучшие практики, предлагая декларативные, гибкие интерфейсы для определения структуры и поведения таблиц. Каждая таблица отличается от других, поэтому имеет смысл определить каждую таблицу. Вы говорите «от руки», но это далеко не так, поскольку решетки делают всю грязную работу за вас, вы просто говорите, что хотите (декларативное программирование).