.net 初学者的一些Silverlight和Windows Phone通用问题

.net 初学者的一些Silverlight和Windows Phone通用问题,.net,silverlight,visual-studio-2012,windows-phone-8,.net,Silverlight,Visual Studio 2012,Windows Phone 8,我开始开发Windows Phone应用程序,甚至在WPF方面有一定的背景也是我第一次使用Silverlight。有些事情我还不明白: Silverlight是一个完整的执行引擎吗?替换.NET引擎?还是一组组件 Silverlight和.NET程序集是否不同?它们兼容吗 为什么Visual Studio 2012中的Winows Phone 8项目显示3个引用,但当您查看csproj时,只有一个对Microsoft.Phone.Controls.dll的引用 关于第3点,一个屏幕截图使其更加清

我开始开发Windows Phone应用程序,甚至在WPF方面有一定的背景也是我第一次使用Silverlight。有些事情我还不明白:

  • Silverlight是一个完整的执行引擎吗?替换.NET引擎?还是一组组件
  • Silverlight和.NET程序集是否不同?它们兼容吗
  • 为什么Visual Studio 2012中的Winows Phone 8项目显示3个引用,但当您查看csproj时,只有一个对Microsoft.Phone.Controls.dll的引用
  • 关于第3点,一个屏幕截图使其更加清晰:

    这3个参考文件与以下csproj线一致:

    <Reference Include="Microsoft.Phone.Controls, Version=8.0.0.0, Culture=neutral, PublicKeyToken=24eec0d8c86cda1e, processorArchitecture=MSIL" />
    
    
    
  • 稍微简化一下,您可以将Silverlight看作完整(桌面).NET框架的一个子集。更重要的是,Windows Phone 8上提供的.NET支持“传统.NET功能”的一个子集。从WPF的角度来看,您会注意到不支持命令,因为您将在桌面应用程序中使用它们,例如,还有许多其他较小的差异
  • 是的,Silverlight和desktop.NET程序集是不同的。虽然这两个环境中的许多类几乎完全相同,但实际的程序集是不同的。例如,您不能将使用desktop.NET framework生成的程序集直接在Windows Phone上使用(尽管如果您有源代码,您可以将源代码生成到Windows Phone程序集中)
  • 我不确定这里的问题是什么。我通常只将对
    Windows Phone
    的引用视为项目中的标准框架程序集(当然,还有我选择引用的任何其他程序集)

  • 如果您正在考虑跨.NET平台(例如桌面、电话、Win8/RT)共享代码,那么您需要了解一下。这些功能有效地针对可在所有受支持平台上运行的.NET功能的公共子集。例如,这是在Windows Phone和Windows 8应用程序之间共享代码的便捷方式。

    谢谢。检查第三个问题的编辑。Silverlight是新的运行时和程序集吗?Silverlight应用程序是否与WP8应用程序相同?