Поделиться через


код диагностики MSB4248

В этой статье описывается код ошибки MSB4248.

Текст сообщения

MSB4248: Cannot expand metadata in expression 'expression'.

Замечания

Ошибка MSB4248 возникает, когда MSBuild не может развернуть метаданные элемента в операции сборки. Эта ситуация обычно происходит, когда ссылки на метаданные используются в недопустимом контексте или когда ссылки на метаданные не существуют для элемента.

Возможные причины

Эта ошибка может возникать по следующим причинам:

  1. метаданные не поддерживаются для элемента Например, ссылки %(RootDir) на элемент, который не является путем.

  2. динамические метаданные элемента в сложных сборках

    • Динамически созданные метаданные элемента могут не всегда быть доступными в зависимости от конфигурации сборки.

Резолюция

  1. убедитесь, что запрошенные метаданные согласованы с элементом.

  2. Условный доступ к метаданным

    • Для динамических сборок убедитесь, что метаданные обрабатываются условно, чтобы не ссылаться на неопределенные метаданные.

      <Message Text="Target Framework: %(Metadataname)" Condition="'%(Metadataname)' != ''" />
      

Применимо к

Все версии MSBuild