Динамическая переменная обрабатывается во время выполнения. на этот раз CLR не может получить достаточно информации о синтаксисе контекста, чтобы решить, какой метод расширения используется. Так что это не работа.

аю книгу «C # in Depth, 2nd Edition» Джона Скита. Он сказал, что мы можем вызывать методы расширения с динамическими аргументами, используя два обходных пути, так же как

dynamic size = 5;
var numbers = Enumerable.Range(10, 10);
var error = numbers.Take(size);
var workaround1 = numbers.Take((int) size);
var workaround2 = Enumerable.Take(numbers, size);

Затем он сказал: «Оба подхода будут работать, если вы хотите вызвать метод расширения с динамическим значением в качестве неявногоthis значение ". Я не знаю, как этого достичь.

Большое спасибо.

Ответы на вопрос(2)

Ваш ответ на вопрос