当前位置: 首页 > 编程语言 > C#

在VisualStudio中设置“目标框架”有什么作用?分享

时间:2023-04-10 22:51:11 C#

在VisualStudio中设置“TargetFramework”有什么作用?在VisualStudio中,您可以为您的项目设置一个“目标框架”。也许不太常见的是,如果您将“目标框架”设置为(例如).NET4.5.2,则在仅安装了.NET4.5.1的计算机上,应用程序将不会运行。第一个问题:这是真的吗?第二个问题:那个环境还有其他影响吗?在我的公司,我们目前正在将应用程序的最低要求设置为.NET4.5.2。所以我们当然要设定“目标框架”。我们使用的内部库设置为.NET4.5的“目标框架”。我们想知道这是否有所作为,或者库是否也应该设置为.NET4.5.2。在我看来,这应该没问题,但我还没有找到关于该主题的任何资源。你怎么认为?第一个问题:这是真的吗?这取决于。如果您的应用程序以4.5.2为目标但不使用4.5.2中的任何内容而不是4.5.1中的任何内容,那么理论上它可以在仅安装4.5.1的机器上运行良好。(可能检查程序/安装程序是否正在运行以检查是否安装了4.5.2,但你可以禁用它)但是,如果你的应用程序使用4.5.2中的函数(或其他函数)而不是4.5.1中的函数,那么你的应用程序将无法在4.5.1计算机上运行。作为一般规则,您应该只将目标设置为所需的最低值。也就是说,如果您不使用4.5.2特定功能,请不要将其定位为4.5.2,因为没有必要。如果可以,最好以4.5.1为目标,因为您将能够在4.5.2和4.5.1机器上正常运行。目标越低越好,因为它可能会在更多机器上运行。同样的规则适用于所有其他框架,(即,如果您的Android应用程序只需要API级别18,则将目标(或至少最低目标)设置为18而不是更高。第一个问题:简短回答-是。每当框架更新后无法保证可能添加或修复了哪些错误或更改,这与任何类型的软件更新都是相同的原则。我的意思的一个很好的例子可能是添加或删除某些内容以更改其内容的应用程序配置设置并在其代码中使用这些设置。如果您尝试用以前的版本替换较新的配置文件,应用程序会中断吗?这是一样的道理。如果您尝试使用的应用程序需要比您当前运行的.NETFramework版本更新的版本,那么,例如,某些功能可能不在您的应用程序所依赖的位置。所以.NET应用程序只会寻找它们的最低.NET版本,而不是低于它。第二个问题:如果您的目标是框架的早期版本(例如.NET2.0),您将不会获得像LINQ这样的功能,但是如果您希望您的应用程序几乎可以在任何安装了.NET的计算机上运行,??那么这里是您的最安全的选择。希望这可以帮助!框架旨在向后兼容;如果你有一个用.NET2.0编写的程序,你可以在4.0运行时上运行它,因为没有一个框架从以前的版本中删除功能(这就是为什么我们仍然有非通用集合,即使它们被弃用以支持genericcollections.然而,反之则不一定正确;4.0应用程序不能保证在2.0中运行,因为它可以利用新运行时的新功能,而这些功能在以前的版本中不可用。无论如何,如果你想让你的应用程序尝试运行在一个没有特别针对的runtime版本上,你必须在app.config中使用SupportedRuntime元素指定那个应用程序。以上是C#学习教程:WhatisthefunctionofsettingVisualStudio中的“目标框架”?分享的所有内容,如果对你有用,需要了解更多C#学习教程,希望大家多多关注。本文收集自网络,不不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: