我想要做的就是正確聲明var place
,所以一旦我到達foreach
循環,它仍然在範圍內。我假設我需要在connections
的if
聲明之前聲明它。這是一個正確的假設,如果是的話,我該如何申報?謝謝!正確聲明匿名類型爲數組以正確保持作用域
using (var db = new DataClasses1DataContext())
{
if (connections == "Connections")
{
var place = (from v in db.pdx_aparts
where v.Latitude != null && v.Region == region && v.WD_Connect >= 1
select new
{
locName = v.Apartment_complex.Trim().Replace(@"""", ""),
latitude = v.Latitude,
longitude = v.Longitude
}).Distinct().ToArray();
}
else
{
var place = (from v in db.pdx_aparts
where v.Latitude != null && v.Region == region && ((v.WD_Connect == null) || (v.WD_Connect == 0))
select new
{
locName = v.Apartment_complex.Trim().Replace(@"""", ""),
latitude = v.Latitude,
longitude = v.Longitude
}).Distinct().ToArray();
}
foreach (var result in place)
....
你可以在'if'摺疊成'where',而是和只有一個查詢?我不認爲你可以在分配給它之前聲明一個匿名類型的變量。 – Blorgbeard
@Blorgbeard可能會阻止SQL Server使用索引。取決於OPs模式。 – usr
@usr我正在使用索引。感謝您注意 –