Мой, честный вопрос - я новичок в ORM: каков большой успех ORM в написании приличного DAL вручную?
Не все программисты готовы или даже способны написать «достойный DAL». Те, кто не могут или боятся одной лишь мысли об этом, считают LINQ или любую другую ORM благословением.
Я лично использую LINQ для манипулирования коллекциями в коде из-за его выразительности. Он предлагает очень компактный и прозрачный способ выполнения некоторых общих задач для коллекций непосредственно в коде.
LINQ перестанет быть полезным для вас, когда вы захотите создавать очень конкретные и оптимизированные запросы вручную. Тогда вы, вероятно, получите смесь запросов LINQ, смешанных с пользовательскими хранимыми процедурами, подключенными к нему. По этой причине я решил отказаться от LINQ to SQL в моем текущем проекте (поскольку у меня есть достойный (imho) уровень DAL). Но я уверен, что LINW отлично подойдет для простых сайтов, таких как, может быть, ваш блог (или ТАК в этом отношении).
При использовании LINQ / ORM может также учитываться отставание для сайтов с высоким трафиком (поскольку каждый входящий запрос должен быть скомпилирован заново). Хотя я должен признать, что не вижу проблем с производительностью на SO.
Вы также можете рассмотреть вопрос об ожидании Entity Framework v2. Он должен быть более мощным, чем LINQ (и, надеюсь, не таким плохим, как v1 (по мнению некоторых людей)).