Мне абсолютно необходим внешний псевдоним для System.Core
в моем проекте. К сожалению, в проекте .Net 4.0 нельзя даже добавить ссылку на System.Core
, потому что, видимо, система сборки включает его по умолчанию. Кто-нибудь знает, как заставить систему разрешить мне указать внешний псевдоним для этой библиотеки? Спасибо!
Как создать внешний псевдоним для System.Core?
comment
Включает ли он его также при нацеливании на более старую версию фреймворка?
- person Fede   schedule 28.04.2010
Ответы (1)
Этот вопрос старый, но я столкнулся с той же проблемой. Насколько я понял, это связано с тем, что Visual Studio неявно добавляет ссылку на System.Core.
Вы можете переопределить это, отредактировав файл csproj msbuild и добавив:
<PropertyGroup>
<AdditionalExplicitAssemblyReferences/>
</PropertyGroup>
в конце.
Это отключает любые AdditionalExplicitAssemblyReferences
, которые, как я предполагаю, Visual Studio передала в MSBuild с помощью переключателя /p[property]. Конечно, теперь нам все еще нужно добавить ссылку на System.Core, так как на нее больше нет ссылок. Сделайте это, добавив
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
<Aliases>global,ActualSystemCore</Aliases>
</Reference>
к ItemGroup
, который содержит ссылки (или новый).
Теперь вы можете ссылаться на тип System.Core
, используя
ActualSystemCore::System....
person
Marcus
schedule
18.06.2011
Если нет конфликта с другими идентификаторами, также разрешено использовать обычную точку, как в
ActualSystemCore.System. ...
.
- person Jeppe Stig Nielsen; 23.02.2016