标签:libs ros 技术 project 设置 lib spl reference mvvm
很不幸的是,在cad上面敲WPF的话,您无可避免地需要将工程设置成 .NET standard 项目,
因为WPF需要判断不同的 net 版本,而传统的 .NET Framework 无法判断....
而很幸福的是,不需要改代码,只需要学习写.csporj文件就可以了...这相当于写一个xml吧...
而我们为什么要判断 net 版本呢?因为写 WPF 存在一个版本差,这个版本差分别是低版本的 net3.5 和高版本的 net4.0,
因为 net4.0 写了很多很丰富的函数.....
而WPF的MarkupExtension接口在 net3.5 和 net4.0 之间有差异,这个差异需要在 net4.0(或以上) 引用一个 System.Xaml.dll 来解决.
我们一般会在这里写上引用
但是因为要判断 net 的版本,所以需要写在这里:
这样就可以在不同的net版本上面单独加载dll了...
完整的.csporj
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFrameworks>NET35;NET40;NET45</TargetFrameworks> <OutputPath>..\..\K01.惊惊连盒\JnFox</OutputPath> </PropertyGroup> <PropertyGroup Condition="‘$(Configuration)|$(TargetFramework)|$(Platform)‘==‘Debug|net35|AnyCPU‘"> <DefineConstants>DEBUG;TRACE</DefineConstants> </PropertyGroup> <PropertyGroup Condition="‘$(Configuration)|$(TargetFramework)|$(Platform)‘==‘Release|net40|AnyCPU‘"> <DefineConstants>DEBUG;TRACE</DefineConstants> </PropertyGroup> <PropertyGroup Condition="‘$(Configuration)|$(TargetFramework)|$(Platform)‘==‘Release|net45|AnyCPU‘"> <DefineConstants>DEBUG;TRACE</DefineConstants> </PropertyGroup> <ItemGroup Condition="‘$(TargetFramework)‘ == ‘net35‘"> <PackageReference Include="CommonServiceLocator"> <Version>1.0.0</Version> </PackageReference> <PackageReference Include="MvvmLightLibs"> <Version>5.4.1.1</Version> </PackageReference> </ItemGroup> <ItemGroup Condition="‘$(TargetFramework)‘ == ‘net40‘"> <PackageReference Include="CommonServiceLocator"> <Version>2.0.2</Version> </PackageReference> <PackageReference Include="MvvmLightLibs"> <Version>5.4.1.1</Version> </PackageReference> <!--net环境加载特定的dll--> <Reference Include="System.Xaml"> <HintPath>C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Xaml.dll</HintPath> </Reference> </ItemGroup> <ItemGroup Condition="‘$(TargetFramework)‘ == ‘net45‘"> <PackageReference Include="CommonServiceLocator"> <Version>2.0.2</Version> </PackageReference> <PackageReference Include="MvvmLightLibs"> <Version>5.4.1.1</Version> </PackageReference> <!--net环境加载特定的dll--> <Reference Include="System.Xaml"> <HintPath>C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\System.Xaml.dll</HintPath> </Reference> <PackageReference Include="System.Runtime"> <Version>4.0.0</Version> </PackageReference> <Reference Include="mscorlib.dll" /> </ItemGroup> <ItemGroup> <Reference Include="PresentationCore" /> <Reference Include="PresentationFramework" /> <Reference Include="System.Xml" /> <Reference Include="WindowsBase" /> <Reference Include="PresentationFramework" /> <Reference Include="System.Xml" /> </ItemGroup> </Project>
美哉
cad.net WPF的MarkupExtension接口引用问题,System.Xaml.dll的引用问题
标签:libs ros 技术 project 设置 lib spl reference mvvm
原文地址:https://www.cnblogs.com/JJBox/p/12677496.html