Я разработчик SQL по профессии, поэтому Linq (и C# в целом) немного чуждо мне, тем не менее у меня есть простой цикл foreach
, который, как я думаю, может быть лучше обслуживаться Linq-запрос. если ничего больше, это будет полезно узнать, даже если проблема не является сложной задачей. Вот мой код:Преобразование простого ForEach в оператор Linq
bool fireAgain = true;
foreach (var connMan in Dts.Connections)
{
Dts.Events.FireInformation
(0
, ""
, String.Format("Connection Manager {0} has connection string {1}"
, connMan.Name
, connMan.ConnectionString)
, ""
, 0
, ref fireAgain
);
}
Я могу понять:
from connMan in Dts.Connections select connMan
достаточно легко, но как же я затем передать мой Connman в мой вызов метода FireInformation?
'тем не менее, у меня есть простой для каждого цикла, который, как я думаю, лучше обслуживается запросом Linq'. Нет, я так не думаю. 'Dts.Connections.ToList(). ForEach (connMan => Dts.Events.FireInformation (.......));' – I4V
linq обычно предназначен для извлечения/преобразования информации из сбор или источник данных, а не для выполнения логики ... поэтому мне интересно, подходит ли использование запроса linq. – Bubblewrap
действительно используют LINQ там, где это не так - облегчите жизнь вам и вашим сопровождающим. LINQ имеет * запрос * как последнее слово в аббревиатуре, поэтому по умолчанию у них нет побочных эффектов. В вашем примере это неизбежно. –