Могу я спросить, зачем вам использовать хранимые процедуры для этого проекта? Они почти не имеют значения сегодня, если вы работаете с современной базой данных. Параметризованный SQL с использованием хорошего ORM даст вам те же кэшированные планы выполнения и преимущества безопасности, которые вы ищете с помощью хранимых процедур.
Я бы порекомендовал NHibernate , потому что это гораздо лучший способ добиться постоянного невежества. И ИМХО, это цель любого, кто разрабатывает модель. Сначала вы должны думать об объекте, а не о данных.
Лучший ресурс вокруг - это скринкаст Стив Болен" Лето nhibernate "
Также LINQ to NHibernate доступен и отлично работает для любого динамического запроса, который вам может потребоваться написать.
Единственная боль, которую вы заметите в NHibernate, - это XML, но если вам действительно нравится ORM, вы можете написать свободный интерфейс вместо использования FNH .
Я обнаружил, что NHibernate является лучшим инструментом для моделирования домена, потому что ваши объекты на 100% свободны от инфраструктуры, и это позволяет вам делать с ними все, что угодно, не беспокоясь о базе данных. Кроме того, если вы участвуете в модульном тестировании любого рода, это значительно облегчит вашу жизнь: P
Редактировать
Одна из причин, по которой я ответил на ваш вопрос, заключается в том, что я построил много систем с использованием хранимых процедур и позже обнаружил, что сожалею об этом решении. Но в моей ситуации у меня было требование к дба, поэтому я не мог отойти от нормы.
Если вы уже рассматриваете LINQ to SQL, я бы просто рекомендовал вам взглянуть на NHibernate как на еще один отличный вариант для достижения цели постоянного невежества.
Когда я впервые задумался о проблемных данных, это позволило мне работать на более высоком уровне и использовать платформу .net для решения проблем. TSQL имеет свое место, но если вы пишете приложение и хотите его поддерживать - попробуйте сначала подумать о том, как ваши доменные объекты будут работать вместе в памяти.
Редактировать 2
Не уверен, почему я получил отрицательный голос за предложение NHibernate - в конце концов, вы сказали, что вы открыты для чего-то другого, кроме L2S
«Все идеи приветствуются. Должен ли я даже использовать LINQ to SQL? Должен ли я создавать свои хранимые процедуры так, чтобы они возвращали только один результат? Я чувствую себя немного потерянным».
Смысл моего ответа был именно в этом - дать еще одну "долгожданную" идею ...