Я не могу ответить на ваш вопрос напрямую, но вы пытались использовать SQL Profiler, чтобы выяснить, как дизайнер извлекает метаданные для вашей хранимой процедуры?
Я думаю, что в вашей ситуации у дизайнера, возможно, не получится придумать что-то для вас. SQL Profiler позволит вам точно это выяснить ...
У меня был довольно положительный опыт использования SqlMetal (вместо дизайнера). Чтобы сэкономить Google, документация на http://msdn.microsoft.com/en-us/library/bb386987.aspx.
Один из способов использования SqlMetal:
- Запустите SqlMetal для извлечения метаданных базы данных в файл DBML.
- Запустите пользовательскую обработку файла DBML (это легко сделать, так как это всего лишь XML).
- Запустите SqlMetal снова, чтобы превратить обновленный DBML в код.
Используя этот подход, вы можете исправить метаданные, используемые для вашей хранимой процедуры (при условии, что она не может быть определена правильно).
Преимущество этого подхода для меня заключается в том, что вы можете изменять свою базу данных в любое время и легко восстанавливать соответствующий строго типизированный код, сохраняя при этом высокую степень контроля над генерируемыми данными.