2011-03-03 2 views
4

Est-il possible de charger un assembly référencé uniquement si la version .NET Framework est inférieure à un nombre spécifique? J'utilise une bibliothèque LINQ selfmade sur .NET 2.0, mais si le framework est 3.5+, il devrait utiliser la bibliothèque M $ LINQ, et ignorer le selfmade.C#: Charger l'assembly référencé basé sur la version du framework?

Edit:
Voilà ma bibliothèque:
http://linq4you.codeplex.com/

+1

Pourquoi utiliser votre propre implémentation LINQ lorsque vous pouvez utiliser le [linqbridge] existant (http://code.google.com/p/linqbridge/)? –

+0

Parce que contrairement à LINQBridge, mon assembly supporte lambdas et les arbres d'expression, comme démontré et requis par Linq.Dynamic, et je prévois d'intégrer LINQ 2 SQL & XML. –

Répondre

5

Oui, vous pouvez le faire en modifiant votre fichier de projet.

Ouvrez votre fichier csproj dans un éditeur de texte, et trouver la ligne dans le fichier de projet qui décrit la dépendance que vous voulez charger certaines conditions, et assurez-vous qu'il ressemble à ceci, par exemple:

<Reference Include="LinqBridge" Condition="$(TargetFrameworkVersion)=='v2.0'"> 
    <HintPath>..\..\..\DevSupport\Lib\LinqBridge\LinqBridge.dll</HintPath> 
    <Private>True</Private> 
</Reference> 
Questions connexes