LinqDataSource Выбрать синтаксис

2

Почему это синтаксис свойства Select в LinqDataSource, отличный от Linq, я бы написал inline в С#? Я имею в виду:

new (Id As MyId, Name As MyName)

против

new (MyId = Id, MyName = Name)

И синтаксис расходится больше, когда вы начинаете делать что-то вроде конкатенации в проекции. Я использую это с моделью данных сущности в качестве поставщика, если это имеет к этому какое-либо отношение.

Я бы ожидал, что что-то, называемое LinqDataSource, просто позволит вам предоставить скомпилированный запрос Linq и сделать с ним.

Также я не смог найти документацию по синтаксису того, что ожидается для свойства Select, кроме самых простых случаев сглаживания полей. Команда Linq Concat не работает, и было всего лишь удачей, что я нашел блог, в котором кто-то выяснил альтернативу. Поэтому в будущем, когда я пытаюсь сделать какие-либо другие манипуляции, я в значительной степени могу только принимать дикие догадки в темноте.

Теги:
linq

1 ответ

1

Я думаю, что это потому, что ключевое слово as уже имеет другое значение в языке. Выбранный синтаксис напоминает синтаксис параметров по умолчанию (.net 4.0) и довольно ясный IMHO.

Обратите внимание, что этот явный синтаксис необходим только тогда, когда имя свойства анонимного типа не может быть выведено или является неопределенным.

  • 0
    Это довольно ясно, когда вы читаете его, но когда вы создаете свой собственный запрос, используя стандартные операторы LINQ, а LinqDataSource их не понимает, расхождение становится проблемой. Это становится игрой в догадки. Где документирован синтаксис, который использует LinqDataSource? Это синтаксис VB LINQ?
  • 0
    Что именно ваш вопрос тогда?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню