C# 中的“SKU”(属性)是啥意思?
Posted
技术标签:
【中文标题】C# 中的“SKU”(属性)是啥意思?【英文标题】:What does "SKU" (attribute) mean in C#?C# 中的“SKU”(属性)是什么意思? 【发布时间】:2013-06-13 11:08:57 【问题描述】:今天遇到的线
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
在我的App.config
文件中,当包含sku
属性时,它导致errors 带有框架。虽然,我搜索了很多,但我无法真正找到SKU
的含义(除了我认为与本案无关的“库存单位”或“货架单位”的定义)。
简而言之,SKU 是什么意思/代表什么?
【问题讨论】:
在这篇文章中,版主似乎只是指向了一篇 wiki 文章。我认为您已经找到的是答案...它只是要使用的框架版本的股票名称:social.msdn.microsoft.com/Forums/en-US/netfxsetup/thread/… 非常,非常重要。 .NET 4.5 与 4.0 完全不兼容。您可以在安装了 4.5 的机器上运行以 4.0 为目标的程序,许多 [TypeForwardedTo] 属性让您免于麻烦。尝试另一种方式会导致非常讨厌的运行时异常。 【参考方案1】:请参阅msdn documentation about the supportedRuntime element。它有一个表格,其中包含 SKU 的有效值以及每个值的含义。
【讨论】:
【参考方案2】:这里有一个很好的答案:
What happens if I remove the auto added supportedRuntime element?
最后一点:“如果您希望能够在 .NET 4.0 上运行,但不需要任何新的 4.5 API”
基本上,您在 App.config 中找到的配置已自动添加,因为您的项目已设置为自动使用 .net Framework 4.5 构建。 如果您希望您的应用程序使用 .net Framework 4.0(没有 4.5 就地更新)运行,您只需右键单击项目 --
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
还请阅读 Rick Strahl 的帖子:
http://weblog.west-wind.com/posts/2012/Mar/13/NET-45-is-an-inplace-replacement-for-NET-40
【讨论】:
【参考方案3】:SKU 代表 Stock-Keeping Unit (SKU),它反过来指定此应用程序支持的 .NET Framework 版本。
【讨论】:
以上是关于C# 中的“SKU”(属性)是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章