我有一个用C#/ .NET编写的小命令行应用程序。我需要它在操作系统上安装.NET 3.5或更高版本时运行。
为此,我的app.config包含以下内容:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" />
<supportedRuntime version="v2.0.50727" />
</startup>
</configuration>
项目框架设置为&#34; .NET Framework 3.5&#34;。
根据我的理解,这两个设置应该是向后兼容的,这样当有人没有安装3.5但安装了4.x时,它将继续工作。
我还缺少其他什么吗?根据我的研究,我认为我已经把所有的部分组合在一起,以便工作。
编辑:根据以下问题,这里也是引用和使用语句。没有第三方组件
以下是项目中的参考资料:
System.Core
System.Web.Extensions
System.Windows.Forms
以下是我的使用陈述:
using System;
using System.Collections.Generic;
using System.IO;
using System.Runtime.InteropServices;
using System.Text;
using System.Security.Cryptography;
using System.Web.Script.Serialization;
using System.Reflection;
using System.Diagnostics;
答案 0 :(得分:1)
这是.NET Framework的已知限制 - 从4开始,如果以前(在您的情况下,目标版本)不是,则不允许应用程序在其自己的运行时内执行安装。
3.5基于不同的CLR(2.0),因此存在一些比较问题。您需要将项目重新定位到4.0(或更高版本),以避免出现框架安装提示。