Я хочу выполнить запрос, чтобы получить строковый массив различных элементов logName для logType. Прекрасно работает следующее:
Dim stringArray() As String = (From item In dc.Vw_Logs
Where item.LogType = [Passed in logType]
Select item.LogName Distinct).ToArray()
Однако, это работает, только когда установлен определенный тип LogType. Я хотел бы, чтобы предложение logType было необязательным. Чтобы добиться этого, я переписал запрос:
Dim q = From item In dc.Vw_Logs Distinct
If not logType is nothing Then
q = q.Where(Function(item) item.LogType = logType)
End If
q.Select(Function(item) item.LogName)
Dim stringArray() As String = q.ToArray()
При этом я получаю следующую ошибку:
Value of type '1-dimensional array of Vw_Log' cannot be converted
to '1-dimensional array of String'
Какой лучший способ обойти это? Я хотел бы избежать повторения каждого предмета и приведения.
Спасибо за любую помощь