{"id":8568,"date":"2013-12-25T23:25:10","date_gmt":"2013-12-25T15:25:10","guid":{"rendered":"http:\/\/bohu.net\/blog\/?p=8568"},"modified":"2023-02-11T00:41:58","modified_gmt":"2023-02-10T16:41:58","slug":"%e4%bd%bf%e7%94%a8-net-framework-%e7%9a%84%e8%b7%a8%e5%b9%b3%e5%8f%b0%e5%bc%80%e5%8f%91","status":"publish","type":"post","link":"https:\/\/www.bohu.net\/blog\/8568\/","title":{"rendered":"\u4f7f\u7528 .NET Framework \u7684\u8de8\u5e73\u53f0\u5f00\u53d1"},"content":{"rendered":"<p>(\u76f8\u5173\u53c2\u9605)\u53ef\u79fb\u690d\u7c7b\u5e93 &#8211; \u00a0http:\/\/msdn.microsoft.com\/zh-cn\/library\/gg597391(v=vs.100).aspx<\/p>\n<p><strong>.NET Framework 4.5\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/strong><\/p>\n<div id=\"mainSection\">\n<div id=\"mainBody\">\n<div>\n<p><!--?XML:NAMESPACE PREFIX = \"[default] http:\/\/www.w3.org\/1999\/xhtml\" NS = \"http:\/\/www.w3.org\/1999\/xhtml\" \/-->Visual Studio 2012 \u4e2d\u7684 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u652f\u6301 .NET Framework \u5e94\u7528\u7684\u8de8\u5e73\u53f0\u5f00\u53d1\u3002<\/p>\n<p>\u4f7f\u7528\u6b64\u9879\u76ee\u7f16\u5199\u548c\u751f\u6210\u7684\u53ef\u79fb\u690d\u7a0b\u5e8f\u96c6\uff0c\u65e0\u987b\u5728\u591a\u4e2a\u5e73\u53f0\u7684\u4fee\u6539\u5373\u53ef\u8fd0\u884c\uff0c\u4f8b\u5982 Windows 7\uff0cWindows 8\uff0cSilverlight \uff0cWindows Phone \u548c Xbox 360\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u4f8b\u5982\uff0c\u53ef\u4ee5\u521b\u5efa\u5728\u684c\u9762\u5e94\u7528\u7a0b\u5e8f\u3001Windows \u5e94\u7528\u5546\u5e97\u5e94\u7528\u7a0b\u5e8f\u548c\u79fb\u52a8\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5305\u542b\u5171\u4eab\u4e1a\u52a1\u903b\u8f91\u7684\u7c7b\uff0c\u7136\u540e\u4ece\u4e0d\u540c\u7c7b\u578b\u7684\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5f15\u7528\u8fd9\u4e9b\u7c7b\u3002<\/p>\n<p>\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee\u652f\u6301 .NET Framework\u3001Silverlight\u3001\u9002\u7528\u4e8e Windows \u5e94\u7528\u5546\u5e97\u5e94\u7528\u7684 .NET\u3001Windows Phone \u548c Xbox 360 \u4e2d\u7684\u90e8\u5206\u7a0b\u5e8f\u96c6\uff0c\u5e76\u63d0\u4f9b\u53ef\u7528\u4e8e\u751f\u6210\u4e0d\u5728\u8fd9\u4e9b\u5e73\u53f0\u4e0a\u8fdb\u884c\u4fee\u6539\u4e5f\u53ef\u8fd0\u884c\u7684\u7a0b\u5e8f\u96c6\u7684 Visual Studio \u6a21\u677f\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u5982\u679c\u6ca1\u6709\u4f7f\u7528\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee\uff0c\u60a8\u5fc5\u987b\u5148\u6307\u5b9a\u5355\u4e2a\u5e94\u7528\u7a0b\u5e8f\u7c7b\u578b\uff0c\u7136\u540e\u624b\u52a8\u4fee\u6539\u5176\u4ed6\u5e94\u7528\u7a0b\u5e8f\u7c7b\u578b\u7684\u7c7b\u5e93\u3002\u00a0 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\uff0c\u53ef\u4ee5\u901a\u8fc7\u751f\u6210\u5728\u4e0d\u540c\u8bbe\u5907\u4e0a\u7684\u5e94\u7528\u7a0b\u5e8f\u4e4b\u95f4\u5171\u4eab\u7684\u53ef\u79fb\u690d\u7a0b\u5e8f\u96c6\u6765\u51cf\u5c11\u5f00\u53d1\u548c\u6d4b\u8bd5\u4ee3\u7801\u7684\u65f6\u95f4\u548c\u8d39\u7528\u3002<\/p>\n<div>\n<table>\n<tbody>\n<tr>\n<th>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <strong>\u8bf4\u660e<\/strong><\/th>\n<\/tr>\n<tr>\n<td>\u5982\u679c\u60a8\u4f7f\u7528\u7684\u662f Visual Studio 2013\uff0c\u5219\u53ef\u7528\u7684\u9009\u9879\u548c\u83dc\u5355\u53ef\u80fd\u4e0e\u672c\u6587\u4e2d\u7684\u63cf\u8ff0\u6709\u6240\u4e0d\u540c\u3002<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>\u4ee5\u4e0b\u5404\u8282\u5bf9 \u53ef\u79fb\u690d\u7c7b\u5e93 \u7684\u529f\u80fd\u8fdb\u884c\u4e86\u4ecb\u7ecd\uff1a<\/p>\n<ul>\n<li>\u5148\u51b3\u6761\u4ef6<\/li>\n<li>\u76ee\u6807\u5e73\u53f0<\/li>\n<li>\u652f\u6301\u7684\u529f\u80fd<\/li>\n<li>\u53d7\u652f\u6301\u7684\u7c7b\u578b\u548c\u6210\u5458<\/li>\n<li>\u5e73\u53f0\u62bd\u8c61<\/li>\n<li>\u652f\u6301\u6a21\u578b-\u89c6\u56fe-\u89c6\u56fe\u6a21\u578b (MVVM) \u6a21\u5f0f<\/li>\n<li>\u521b\u5efa\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee\u3002<\/li>\n<li>\u9009\u62e9\u76ee\u6807\u5e73\u53f0<\/li>\n<li>\u4f7f\u7528\u53ef\u79fb\u690d\u7c7b\u5e93<\/li>\n<\/ul>\n<\/div>\n<div>\n<div>\n<div>\u5148\u51b3\u6761\u4ef6<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>\u5982\u679c\u5c06 Visual Studio 2012 \u7684\u591a\u5e73\u53f0\u7248\u672c\u7528\u4f5c\u5f00\u53d1\u73af\u5883\uff0c\u5219\u60a8\u6240\u9700\u7684\u7528\u4e8e\u5f00\u53d1\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee\u7684\u51e0\u4e4e\u6240\u6709\u5185\u5bb9\u5747\u53ef\u4f9b\u60a8\u4f7f\u7528\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u503c\u5f97\u6ce8\u610f\u7684\u662f\uff0c\u53ef\u79fb\u690d\u7c7b\u5e93\u5728\u67d0\u4e9b Visual Studio \u5355\u5e73\u53f0\u7248\u672c\u4e2d\u4e0d\u53ef\u7528\uff0c\u4f8b\u5982 Visual Studio Express for Windows 8\u3002\u00a0 Windows Phone SDK 8.0 in addition to the version of Visual Studio 2012 that you already have installed.&#8217;&gt;\u6b64\u5916\uff0c\u5982\u679c\u8981\u9762\u5411 Windows Phone 8 \u8fdb\u884c\u5f00\u53d1\uff0c\u9664\u4e86\u60a8\u5df2\u7ecf\u5b89\u88c5\u7684 Visual Studio 2012 \u7248\u672c\uff0c\u8fd8\u5fc5\u987b\u5b89\u88c5 Windows Phone SDK 8.0\u3002Portable Library Tools, and save the download file (PortableLibraryTools.exe) on your computer.&#8217;&gt;\u82e5\u8981\u5728\u672a\u5b89\u88c5 Visual Studio 2012 \u7684\u60c5\u51b5\u4e0b\u5728\u751f\u6210\u8ba1\u7b97\u673a\u4e0a\u5b89\u88c5\u53ef\u79fb\u690d\u7c7b\u5e93\u5de5\u5177\uff0c\u8bf7\u4e0b\u8f7d Portable Library Tools \uff08\u53ef\u79fb\u690d\u5e93\u5de5\u5177\uff09\uff0c\u5e76\u5c06\u4e0b\u8f7d\u7684\u6587\u4ef6 (PortableLibraryTools.exe) \u4fdd\u5b58\u5230\u60a8\u7684\u8ba1\u7b97\u673a\u4e0a\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \/buildmachine switch on the command line.&#8217;&gt;\u4ece\u547d\u4ee4\u63d0\u793a\u7b26\u7a97\u53e3\u8fd0\u884c\u5b89\u88c5\u7a0b\u5e8f\uff0c\u5e76\u5305\u62ec\u547d\u4ee4\u884c\u4e0a\u7684 \/buildmachine \u5f00\u5173\u3002<\/div>\n<\/div>\n<div>\n<div>\n<div>\u76ee\u6807\u5e73\u53f0<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>\u5f53\u60a8\u521b\u5efa \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u65f6\uff0c\u53ef\u4ee5\u9009\u62e9\u8981\u9488\u5bf9\u7684\u4e24\u4e2a\u6216\u591a\u4e2a\u5e73\u53f0\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u4e0b\u8868\u663e\u793a\u53ef\u7528\u5e73\u53f0\u3002<\/p>\n<div><\/div>\n<div>\n<table>\n<tbody>\n<tr>\n<th>\u5e73\u53f0<\/th>\n<th>\u7248\u672c<\/th>\n<\/tr>\n<tr>\n<td>.NET Framework<\/td>\n<td>.NET Framework 4 \u548c\u66f4\u9ad8\u7248\u672c.NET Framework 4.0.3 \u548c\u66f4\u9ad8\u7248\u672c.NET Framework 4.5<\/td>\n<\/tr>\n<tr>\n<td>Silverlight<\/td>\n<td>Silverlight 4 \u548c\u66f4\u9ad8\u7248\u672c\uff08\u9ed8\u8ba4\u9009\u4e2d\uff09\u3002Silverlight 5<\/td>\n<\/tr>\n<tr>\n<td>Windows Phone<\/td>\n<td>Windows Phone 7 \u548c\u66f4\u9ad8\u7248\u672c\uff08\u9ed8\u8ba4\u9009\u4e2d\uff09Windows Phone 7.5 \u548c\u66f4\u9ad8\u7248\u672cWindows Phone 8<\/p>\n<div>\n<div>\n<div>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 <strong>\u91cd\u8981\u4e8b\u9879<\/strong><\/div>\n<div>Windows Phone SDK 8.0 for the Windows Phone 8 option. &#8216;&gt;\u5982\u679c\u9009\u62e9 Windows Phone 8\uff0c\u5219\u5fc5\u987b\u5b89\u88c5 Windows Phone SDK 8.0\u3002<\/div>\n<\/div>\n<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td>\u9002\u7528\u4e8e Windows \u5e94\u7528\u5546\u5e97\u5e94\u7528\u7684 .NET (*)<\/td>\n<td>\u4e0d\u53ef\u7528<\/td>\n<\/tr>\n<tr>\n<td>Xbox 360<\/td>\n<td>\u4e0d\u53ef\u7528<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>\u8be5\u8868\u6807\u8bc6\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5904\u4e8e\u9009\u4e2d\u72b6\u6001\u7684\u56db\u4e2a\u5e73\u53f0\u6216\u7248\u672c\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 Project Properties dialog box, as shown in the section Selecting the Platforms to Target.&#8217;&gt;\u5982 \u9009\u62e9\u8981\u9762\u5411\u7684\u5e73\u53f0 \u6240\u793a\uff0c\u53ef\u4ee5\u901a\u8fc7\u4f7f\u7528\u201c\u9879\u76ee\u5c5e\u6027\u201d\u5bf9\u8bdd\u6846\u6765\u66f4\u6539\u8fd9\u4e9b\u9ed8\u8ba4\u5e73\u53f0\u3002<\/p>\n<\/div>\n<\/div>\n<div>\n<div>\n<div>\u652f\u6301\u7684\u529f\u80fd<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>\u5728\u6307\u5b9a\u76ee\u6807\u5e73\u53f0\u65f6\uff0c\u5728 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u4e2d\uff0c\u4ec5\u5728\u60a8\u7684\u9879\u76ee\u4e2d\u81ea\u52a8\u5f15\u7528\u8fd9\u4e9b\u5e73\u53f0\u652f\u6301\u7684\u7a0b\u5e8f\u96c6\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u60a8\u4e0d\u5fc5\u6dfb\u52a0\u6216\u79fb\u9664\u7a0b\u5e8f\u96c6\u3002\u00a0 \u5982\u679c\u60a8\u66f4\u6539\u76ee\u6807\u5e73\u53f0\uff0c\u5219\u81ea\u52a8\u66f4\u65b0\u5f15\u7528\u7684\u7a0b\u5e8f\u96c6\u3002\u5982\u679c\u60a8\u53ea\u4ee5 .NET Framework 4.5 \u548c \u9002\u7528\u4e8e Windows \u5e94\u7528\u5546\u5e97\u5e94\u7528\u7684 .NET \u4e3a\u76ee\u6807\uff0c\u90a3\u4e48\u60a8\u5c31\u6709\u6743\u8bbf\u95ee\u6bd4\u5176\u4ed6\u5e73\u53f0\u7ec4\u5408\u4e2d\u66f4\u5927\u7684\u7a0b\u5e8f\u96c6\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u6b64\u8f83\u5927\u7a0b\u5e8f\u96c6\u7684\u96c6\u5408\u4e0e \u9002\u7528\u4e8e Windows \u5e94\u7528\u5546\u5e97\u5e94\u7528\u7684 .NET \u51e0\u4e4e\u662f\u76f8\u540c\u7684\uff0c\u4f46\u662f\u4e0d\u5305\u62ec Windows.UI.Xaml \u547d\u540d\u7a7a\u95f4\u4e2d\u7684\u7c7b\u3002\u00a0 .NET for Windows Store apps \u2013 supported APIs in the Windows Dev Center.&#8217;&gt;\u6709\u5173\u8be6\u7ec6\u4fe1\u606f\uff0c\u8bf7\u53c2\u89c1 Windows \u5f00\u53d1\u4eba\u5458\u4e2d\u5fc3\u4e2d\u7684 .NET for Windows Store apps \u2013 supported APIs\uff08\u7528\u4e8e Windows \u5e94\u7528\u5546\u5e97\u5e94\u7528\u7a0b\u5e8f\u7684 .NET\u2013\u53d7\u652f\u6301\u7684 API\uff09\u3002\u4e0b\u8868\u663e\u793a\u4e86\u53ef\u7528\u5e73\u53f0\u548c\u7248\u672c\u4e0a\u652f\u6301\u7684\u529f\u80fd\u3002<\/p>\n<div><\/div>\n<div>\n<table>\n<tbody>\n<tr>\n<th>\u529f\u80fd<\/th>\n<th>.NET Framework<\/th>\n<th>Windows \u5e94\u7528\u5546\u5e97<\/th>\n<th>Silverlight<\/th>\n<th>Windows Phone<\/th>\n<th>Xbox 360<\/th>\n<\/tr>\n<tr>\n<td>\u6838\u5fc3<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<\/tr>\n<tr>\n<td>LINQ<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>IQueryable<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>7.5 \u548c\u66f4\u9ad8\u7248\u672c<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>\u52a8\u6001\u5173\u952e\u5b57<\/td>\n<td>\u4ec5\u9650 4.5<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>Managed Extensibility Framework (MEF)<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>\u7f51\u7edc\u7c7b\u5e93 (NCL)<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>\u5e8f\u5217\u5316<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>Windows Communication Foundation (WCF)<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>\u6a21\u578b\u89c6\u56fe\u89c6\u56fe\u6a21\u578b (MVVM)<\/td>\n<td>\u4ec5\u9650 4.5<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>\u6570\u636e\u6279\u6ce8<\/td>\n<td>\u4ec5 4.0.3 \u548c 4.5<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>XLINQ<\/td>\n<td>\u4ec5 4.0.3 \u548c 4.5<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<\/tr>\n<tr>\n<td>System.Numerics<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td>\u221a<\/td>\n<td><\/td>\n<td><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<\/div>\n<div>\n<div>\n<div>\u53d7\u652f\u6301\u7684\u7c7b\u578b\u548c\u6210\u5458<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>\u5728 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u4e2d\u53ef\u7528\u7684\u7c7b\u578b\u548c\u6210\u5458\u53d7\u82e5\u5e72\u517c\u5bb9\u6027\u56e0\u7d20\u7ea6\u675f\uff1a<\/p>\n<ul>\n<li>\u5b83\u4eec\u5fc5\u987b\u5728\u6240\u9009\u7684\u76ee\u6807\u5e73\u53f0\u4e4b\u95f4\u5171\u4eab\u3002<\/li>\n<li>\u5fc5\u987b\u884c\u4e3a\u4e0e\u5e73\u53f0\u4e0a\u7684\u8fd9\u4e9b\u884c\u4e3a\u7c7b\u4f3c\u3002<\/li>\n<li>\u5b83\u4eec\u4e0d\u5f97\u662f\u8981\u5f03\u7528\u7684\u5019\u9009\u9879\u3002<\/li>\n<li>\u5b83\u4eec\u5fc5\u987b\u5728\u53ef\u79fb\u690d\u73af\u5883\u4e2d\u624d\u6709\u610f\u4e49\uff0c\u7279\u522b\u662f\u5728\u652f\u6301\u6210\u5458\u65f6\u662f\u4e0d\u53ef\u79fb\u690d\u65f6\u3002<\/li>\n<\/ul>\n<p>\u4f8b\u5982\uff0c\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee\u4e0d\u5305\u542b\u4efb\u4f55 UI \u76f8\u5173\u7c7b\u578b\u6216\u6210\u5458\uff0c\u539f\u56e0\u662f\u4e0d\u540c\u8bbe\u5907\u7684 UI \u7684\u884c\u4e3a\u4e0d\u540c\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u5982\u679c\u60a8\u7684\u76ee\u6807\u662f\u5728 \u53ef\u79fb\u690d\u7c7b\u5e93 \u5f15\u5165\u4e4b\u524d\u53d1\u5e03\u7684\u5e73\u53f0\uff08\u5982 Xbox\u3001.NET Framework 4 \u548cWindows Phone 7\uff09\uff0c\u90a3\u4e48\u60a8\u53ef\u80fd\u4f1a\u9047\u5230\u9650\u5236\u3002<\/p>\n<p>.NET Framework Class Library.&#8217;&gt;\u53ef\u67e5\u627e \u53ef\u79fb\u690d\u7c7b\u5e93 \u652f\u6301\u7684\u6210\u5458\uff0c\u5728 .NET Framework Class Library\uff08.NET Framework \u7c7b\u5e93\uff09\u7684\u53c2\u8003\u4e3b\u9898\u4e2d\u67e5\u627e\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u5728\u7c7b\u7684\u6210\u5458\u8868\u4e2d\uff0c\u53d7\u652f\u6301\u7684\u6210\u5458\u65c1\u8fb9\u4f1a\u663e\u793a\u4ee5\u4e0b\u53ef\u79fb\u690d\u7c7b\u5e93\u56fe\u6807\u3002<\/p>\n<p>Chars property in the String class is supported in the Portable Class Library.&#8217;&gt;\u4f8b\u5982\uff0c\u4e0b\u9762\u7684\u56fe\u50cf\u663e\u793a\uff0c\u5728 String \u7c7b\u4e2d\u7684 Chars \u5c5e\u6027\u5728 \u53ef\u79fb\u690d\u7c7b\u5e93 \u4e2d\u652f\u6301\u3002<\/p>\n<p>Version Information section of a reference topic for a note indicating that a type or member is supported in the Portable Class Library project, as shown below.&#8217;&gt;\u6309\u5982\u4e0b\u663e\u793a\uff0c\u8fd8\u53ef\u4ee5\u67e5\u770b\u53c2\u8003\u4e3b\u9898\u7684\u201c\u7248\u672c\u4fe1\u606f\u201d\u8282\uff0c\u4e86\u89e3\u6307\u793a\u5728\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee\u4e2d\u53d7\u652f\u6301\u7684\u7c7b\u578b\u6216\u6210\u5458\u7684\u6ce8\u91ca\u3002<\/p>\n<\/div>\n<\/div>\n<div>\n<div>\n<div>\u5e73\u53f0\u62bd\u8c61<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>\u901a\u5e38\uff0c\u60a8\u9700\u8981\u4ece\u53ef\u79fb\u690d\u7c7b\u4e2d\u8c03\u7528\u4e0d\u53ef\u79fb\u690d\u7684\u6210\u5458\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u65e0\u6cd5\u76f4\u63a5\u8c03\u7528\u4e0d\u53ef\u79fb\u690d\u7684\u6210\u5458\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u6210\u5458\u4e0d\u9002\u7528\u4e8e \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u3002\u00a0 \u76f8\u53cd\uff0c\u60a8\u53ef\u4ee5\u5728 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u4e2d\u521b\u5efa\u4e00\u4e2a\u62bd\u8c61\u7c7b\u5e76\u53ef\u4ee5\u4ece\u6240\u6709\u53ef\u79fb\u690d\u4ee3\u7801\u4e2d\u4f7f\u7528\u8be5\u7c7b\u3002\u00a0 \u5728\u7279\u5b9a\u4e8e\u5e73\u53f0\u7684\u9879\u76ee\u4e2d\uff0c\u521b\u5efa\u62bd\u8c61\u7c7b\u7684\u5b50\u7c7b\u5e76\u5b9e\u73b0\u7279\u5b9a\u4e8e\u5e73\u53f0\u7684\u884c\u4e3a\u3002\u4ee5\u4e0b\u793a\u4f8b\u663e\u793a\u4e0e\u672c\u5730\u8bbe\u7f6e\u4e00\u8d77\u4f7f\u7528\u7684\u53ef\u79fb\u690d\u7c7b\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u5728 Windows \u5e94\u7528\u5546\u5e97 \u5e94\u7528\u7a0b\u5e8f\u548c Silverlight \u5e94\u7528\u7a0b\u5e8f\u4e2d\u5904\u7406\u672c\u5730\u8bbe\u7f6e\u7684\u65b9\u5f0f\u5404\u4e0d\u76f8\u540c\uff0c\u56e0\u6b64\u53ef\u79fb\u690d\u7c7b\u4e0d\u63d0\u4f9b\u4efb\u4f55\u5b9e\u73b0\u8be6\u7ec6\u4fe1\u606f\u3002<\/p>\n<div id=\"snippetGroup\">\n<div id=\"code-snippet-1\">\n<div>\n<div dir=\"ltr\">C#<\/div>\n<\/div>\n<div>\n<div id=\"CodeSnippetContainerCode_23eb2a78-fb74-4127-a18b-c7743398be36\" dir=\"ltr\">\n<div>\n<pre>using System;\n\nnamespace ExamplePortableLibrary\n{\n    public abstract class ExampleLocalSettings\n    {\n        public abstract void SetLocalValue(string name, object value);\n\n        public static ExampleLocalSettings Instance { get; set; }\n    }\n}<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>\u5728 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u4e2d\uff0c\u53ef\u4ee5\u6309\u4ee5\u4e0b\u65b9\u5f0f\u4f7f\u7528\u3002<\/p>\n<div id=\"code-snippet-2\">\n<div>\n<div dir=\"ltr\">C#<\/div>\n<\/div>\n<div>\n<div id=\"CodeSnippetContainerCode_0fcdf4d9-a78a-44c8-8d06-a736a363c5a6\" dir=\"ltr\">\n<div>\n<pre>ExampleLocalSettings.Instance.SetLocalValue(\"ExampleSetting\", \"New value to add\");<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>\u5728\u60a8\u7684 Silverlight \u9879\u76ee\u4e2d\uff0c\u6dfb\u52a0\u5f15\u7528\u5230\u53ef\u79fb\u690d\u7684\u7a0b\u5e8f\u96c6\uff0c\u7136\u540e\u521b\u5efa\u5b9e\u73b0\u7279\u5b9a\u4e8e Silverlight \u73af\u5883\u7684\u672c\u5730\u8bbe\u7f6e\u64cd\u4f5c\u7684\u5b50\u7c7b\u3002\u00a0 ExampleLocalSettings class.&#8217;&gt;\u4e0b\u9762\u7684\u793a\u4f8b\u6f14\u793a ExampleLocalSettings \u7c7b\u7684 Silverlight \u5b9e\u73b0\u3002<\/p>\n<div id=\"snippetGroup1\">\n<div id=\"code-snippet-3\">\n<div>\n<div dir=\"ltr\">C#<\/div>\n<\/div>\n<div>\n<div id=\"CodeSnippetContainerCode_2bcc7e13-e270-4ca4-8fa1-0b87717a6407\" dir=\"ltr\">\n<div>\n<pre>using System;\nusing System.IO.IsolatedStorage;\nusing ExamplePortableLibrary;\n\nnamespace SilverlightApplication1\n{\n    class SilverlightImplementation : ExampleLocalSettings\n    {\n        public override void SetLocalValue(string name, object value)\n        {\n            IsolatedStorageSettings.ApplicationSettings.Add(name, value);\n        }\n    }\n}<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>\u5728\u60a8\u7684 Windows \u5e94\u7528\u5546\u5e97 \u5e94\u7528\u7a0b\u5e8f\u4e2d\uff0c\u6dfb\u52a0\u5f15\u7528\u5230\u53ef\u79fb\u690d\u7684\u7a0b\u5e8f\u96c6\uff0c\u7136\u540e\u521b\u5efa\u5b9e\u73b0\u7279\u5b9a\u4e8e Windows \u5e94\u7528\u5546\u5e97 \u5e94\u7528\u7a0b\u5e8f\u7684\u672c\u5730\u8bbe\u7f6e\u64cd\u4f5c\u7684\u5b50\u7c7b\u3002\u00a0 ExampleLocalSettings class for a Windows Store app.&#8217;&gt;\u4e0b\u9762\u7684\u793a\u4f8b\u6f14\u793a Windows \u5e94\u7528\u5546\u5e97 \u5e94\u7528\u7a0b\u5e8f\u7684 ExampleLocalSettings \u7c7b\u7684\u5b9e\u73b0\u3002<\/p>\n<div id=\"snippetGroup2\">\n<div id=\"code-snippet-4\">\n<div>\n<div dir=\"ltr\">C#<\/div>\n<\/div>\n<div>\n<div id=\"CodeSnippetContainerCode_0ea9b214-4212-484a-8503-e5e488740fde\" dir=\"ltr\">\n<div>\n<pre>using System;\nusing Windows.Storage;\nusing ExamplePortableLibrary;\n\nnamespace App1\n{\n    class AppImplementation : ExampleLocalSettings\n    {\n        public override void SetLocalValue(string name, object value)\n        {\n            ApplicationData.Current.LocalSettings.Values[name] = value;\n        }\n    }\n}<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>Instance property.&#8217;&gt;\u5728 Silverlight \u5e94\u7528\u7a0b\u5e8f\u548c Windows \u5e94\u7528\u5546\u5e97 \u5e94\u7528\u7a0b\u5e8f\u4e24\u4e2a\u4e2d\uff0c\u5fc5\u987b\u521d\u59cb\u5316\u5b50\u7c7b\u7684\u7279\u5b9a\u5b9e\u73b0\u5e76\u5c06\u5176\u8bbe\u7f6e\u4e3a Instance \u5c5e\u6027\u3002\u00a0 \u901a\u5e38\uff0c\u60a8\u5728\u8be5\u5e94\u7528\u7a0b\u5e8f\u5f00\u59cb\u65f6\u521b\u5efa\u6b64\u793a\u4f8b\u3002\u00a0 \u4ee5\u4e0b\u793a\u4f8b\u663e\u793a\u5982\u4f55\u521d\u59cb\u5316 Silverlight \u5b9e\u73b0\u3002<\/p>\n<div id=\"code-snippet-5\">\n<div>\n<div dir=\"ltr\">C#<\/div>\n<\/div>\n<div>\n<div id=\"CodeSnippetContainerCode_91cb1f78-62db-487c-9e4f-6f40c54c3270\" dir=\"ltr\">\n<div>\n<pre>ExampleLocalSettings.Instance = new SilverlightImplementation();<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>\u4ee5\u4e0b\u793a\u4f8b\u663e\u793a\u5982\u4f55\u4e3a Windows \u5e94\u7528\u5546\u5e97 \u5e94\u7528\u7a0b\u5e8f\u521d\u59cb\u5316\u5b9e\u73b0\u3002<\/p>\n<div id=\"code-snippet-6\">\n<div>\n<div dir=\"ltr\">C#<\/div>\n<\/div>\n<div>\n<div id=\"CodeSnippetContainerCode_555f690f-e27c-4d57-8bb2-6e8de21cf19c\" dir=\"ltr\">\n<div>\n<pre>ExampleLocalSettings.Instance = new AppImplementation();<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div>\n<div>\n<div>\u652f\u6301\u6a21\u578b-\u89c6\u56fe-\u89c6\u56fe\u6a21\u578b (MVVM) \u6a21\u5f0f<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>\u5982\u679c\u60a8\u7684\u76ee\u6807\u662f .NET Framework 4.5\u3001\u9002\u7528\u4e8e Windows \u5e94\u7528\u5546\u5e97\u5e94\u7528\u7684 .NET\u3001Silverlight \u548c Windows Phone\uff0c\u5219\u53ef\u4ee5\u5728\u89e3\u51b3\u65b9\u6848\u4e2d\u5b9e\u73b0\u89c6\u56fe MVVM \u6a21\u5f0f\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u5b9e\u73b0\u6b64\u6a21\u5f0f\u7684\u7c7b\u5305\u62ec\u4ee5\u4e0b\uff1a<\/p>\n<ul>\n<li>System.Collections.ObjectModel.ObservableCollection&lt;T&gt;<\/li>\n<li>System.Collections.ObjectModel.ReadOnlyObservableCollection&lt;T&gt;<\/li>\n<li>System.Collections.Specialized.INotifyCollectionChanged<\/li>\n<li>System.Collections.Specialized.NotifyCollectionChangedAction<\/li>\n<li>System.Collections.Specialized.NotifyCollectionChangedEventArgs<\/li>\n<li>System.Collections.Specialized.NotifyCollectionChangedEventHandler<\/li>\n<li>System.ComponentModel.DataErrorsChangedEventArgs<\/li>\n<li>System.ComponentModel.INotifyDataErrorInfo<\/li>\n<li>System.ComponentModel.INotifyPropertyChanged<\/li>\n<li>System.Windows.Input.ICommand<\/li>\n<\/ul>\n<p>Using Portable Class Library with Model-View-View Model.&#8217;&gt;\u6709\u5173\u5982\u4f55\u5728 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u4e2d\u5b9e\u73b0 MVVM \u6a21\u5f0f\u7684\u66f4\u591a\u4fe1\u606f\uff0c\u8bf7\u53c2\u89c1 \u5c06\u53ef\u79fb\u690d\u7c7b\u5e93\u4e0e\u6a21\u578b-\u89c6\u56fe-\u89c6\u56fe\u6a21\u578b\u914d\u5408\u4f7f\u7528\u3002<\/p>\n<\/div>\n<\/div>\n<div>\n<div>\n<div>\u521b\u5efa\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>Portable Class Library template under Visual C# or Visual Basic.&#8217;&gt;\u82e5\u8981\u521b\u5efa \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\uff0c\u9700\u8981\u5728 Visual Studio 2012 \u4e2d\u521b\u5efa\u4e00\u4e2a\u65b0\u9879\u76ee\uff0c\u7136\u540e\u5728 Visual C# \u6216 Visual Basic \u4e0b\u9009\u62e9\u201c\u53ef\u79fb\u690d\u7c7b\u5e93\u201d\u6a21\u677f\u3002<\/div>\n<\/div>\n<div>\n<div>\n<div>\u9009\u62e9\u76ee\u6807\u5e73\u53f0<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee\u9762\u5411\u4ee5\u4e0b\u5e73\u53f0\uff1a<\/p>\n<ul>\n<li>.NET Framework 4.5<\/li>\n<li>Silverlight 4 \u53ca\u66f4\u65b0\u7248\u672c<\/li>\n<li>Windows Phone 7 \u53ca\u66f4\u9ad8\u7248\u672c<\/li>\n<li>\u9002\u7528\u4e8e Windows \u5e94\u7528\u5546\u5e97\u5e94\u7528\u7684 .NET<\/li>\n<\/ul>\n<p>\u8be5\u9879\u76ee\u53ea\u5f15\u7528\u53d7\u8fd9\u4e9b\u5e73\u53f0\u652f\u6301\u7684\u7a0b\u5e8f\u96c6\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 Solution Explorer, open the shortcut menu for the Portable Class Library project, and then choose Properties.&#8217;&gt;\u82e5\u8981\u66f4\u6539\u76ee\u6807\u5e73\u53f0\uff0c\u5219\u5728\u201c\u89e3\u51b3\u65b9\u6848\u8d44\u6e90\u7ba1\u7406\u5668\u201d\u4e2d\uff0c\u6253\u5f00 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u7684\u5feb\u6377\u83dc\u5355\uff0c\u7136\u540e\u9009\u62e9\u201c\u5c5e\u6027\u201d\u3002<\/p>\n<p>Library tab specifies the platforms that are currently targeted.&#8217;&gt;\u5728\u9879\u76ee\u5c5e\u6027\u9875\u4e0a\uff0c\u201c\u5e93\u201d\u9009\u9879\u5361\u6307\u5b9a\u5f53\u524d\u9762\u5411\u7684\u5e73\u53f0\u3002<\/p>\n<p>Change button, and then select the appropriate check boxes.&#8217;&gt;\u82e5\u8981\u6dfb\u52a0\u6216\u79fb\u9664\u76ee\u6807\u5e73\u53f0\uff0c\u8bf7\u9009\u62e9\u201c\u66f4\u6539\u201d \u6309\u94ae\uff0c\u7136\u540e\u9009\u62e9\u76f8\u5e94\u7684\u590d\u9009\u6846\u3002<\/p>\n<p>\u66f4\u6539\u76ee\u6807\u5e73\u53f0\u65f6\uff0c\u8be5\u9879\u76ee\u4e2d\u53ef\u7528\u7684\u7a0b\u5e8f\u96c6\u4f1a\u53d1\u751f\u66f4\u6539\u4ee5\u5339\u914d\u60a8\u6240\u9009\u5e73\u53f0\u652f\u6301\u7684\u7a0b\u5e8f\u96c6\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u5982\u679c\u60a8\u7684\u9879\u76ee\u5f15\u7528\u7684\u7a0b\u5e8f\u96c6\u4e0d\u53d7\u67d0\u4e2a\u6240\u9009\u5e73\u53f0\u652f\u6301\uff0c\u5fc5\u987b\u79fb\u9664\u5bf9\u76f8\u5e94\u7a0b\u5e8f\u96c6\u7684\u5f15\u7528\u6216\u66f4\u6539\u76ee\u6807\u5e73\u53f0\u3002<\/p>\n<\/div>\n<\/div>\n<div>\n<div>\n<div>\u4f7f\u7528\u53ef\u79fb\u690d\u7c7b\u5e93<\/p>\n<div>\n<hr \/>\n<\/div>\n<\/div>\n<\/div>\n<div>\u5728\u60a8\u751f\u6210 \u53ef\u79fb\u690d\u7c7b\u5e93 \u9879\u76ee\u540e\uff0c\u53ea\u662f\u4ece\u5176\u4ed6\u9879\u76ee\u5f15\u7528\u8be5\u9879\u76ee\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u53ef\u4ee5\u5f15\u7528\u8be5\u9879\u76ee\u6216\u5305\u542b\u60a8\u8981\u8bbf\u95ee\u7684\u7c7b\u7684\u7279\u5b9a\u7a0b\u5e8f\u96c6\u3002\u82e5\u8981\u8fd0\u884c\u5f15\u7528 \u53ef\u79fb\u690d\u7c7b\u5e93 \u7a0b\u5e8f\u96c6\u7684\u5e94\u7528\u7a0b\u5e8f\uff0c\u5fc5\u987b\u5728\u8ba1\u7b97\u673a\u4e0a\u5b89\u88c5\u6240\u9700\u7248\u672c\uff08\u6216\u66f4\u9ad8\u7248\u672c\uff09\u7684\u76ee\u6807\u5e73\u53f0\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 Visual Studio 2012 \u5305\u542b\u6240\u6709\u5fc5\u9700\u7684\u67b6\u6784\uff0c\u56e0\u6b64\u60a8\u53ef\u4ee5\u8fd0\u884c\u8be5\u5e94\u7528\u7a0b\u5e8f\uff0c\u800c\u65e0\u9700\u5728\u7528\u4e8e\u5f00\u53d1\u5e94\u7528\u7a0b\u5e8f\u7684\u8ba1\u7b97\u673a\u4e0a\u8fdb\u884c\u8fdb\u4e00\u6b65\u4fee\u6539\u3002<\/p>\n<h3>\u90e8\u7f72 .NET Framework \u5e94\u7528\u7a0b\u5e8f<\/h3>\n<div id=\"collapseableSection9\">\n<p>\u90e8\u7f72\u5f15\u7528 \u53ef\u79fb\u690d\u7c7b\u5e93 \u7a0b\u5e8f\u96c6\u7684 .NET Framework \u5e94\u7528\u7a0b\u5e8f\u65f6\uff0c\u5fc5\u987b\u5728\u6b63\u786e\u7248\u672c\u7684 .NET Framework \u4e0a\u6307\u5b9a\u4e00\u4e2a\u4f9d\u8d56\u9879\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u901a\u8fc7\u6307\u5b9a\u6b64\u4f9d\u8d56\u9879\uff0c\u53ef\u786e\u4fdd\u4e0e\u60a8\u7684\u5e94\u7528\u7a0b\u5e8f\u4e00\u8d77\u5b89\u88c5\u6240\u9700\u7684\u7248\u672c\u3002\u00a0 update, Update 4.0.3 for the .NET Framework 4, or the .NET Framework 4.5 installed.&#8217;&gt;\u5982\u679c\u9762\u5411\u7684\u662f .NET Framework 4 \u6216\u66f4\u9ad8\u7248\u672c\uff0c\u5219\u5fc5\u987b\u5df2\u5b89\u88c5\u542b update\uff08\u66f4\u65b0\uff09\u7684 .NET Framework 4\u3001.NET Framework 4 \u7684\u66f4\u65b0 4.0.3 \u6216 .NET Framework 4.5\u3002<\/p>\n<ul>\n<li>Solution Explorer, choose the project node for the project you want to publish. (This is the project that references the Portable Class Library project.) On the menu bar, choose Project, Properties, and then choose the Publish tab.&#8217;&gt;\u82e5\u8981\u4f7f\u7528 ClickOnce \u90e8\u7f72\u521b\u5efa\u4f9d\u8d56\u9879\uff0c\u8bf7\u5728\u201c\u89e3\u51b3\u65b9\u6848\u8d44\u6e90\u7ba1\u7406\u5668\u201d\u4e2d\uff0c\u9009\u62e9\u60a8\u8981\u53d1\u5e03\u7684\u9879\u76ee\u5bf9\u5e94\u7684\u9879\u76ee\u8282\u70b9\u3002\uff08\u8fd9\u662f\u5f15\u7528\u53ef\u79fb\u690d\u7c7b\u5e93\u9879\u76ee\u7684\u9879\u76ee\u3002\uff09\u5728\u83dc\u5355\u680f\u4e0a\uff0c\u4f9d\u6b21\u9009\u62e9\u201c\u9879\u76ee\u201d\u3001\u201c\u5c5e\u6027\u201d\uff0c\u7136\u540e\u9009\u62e9\u201c\u53d1\u5e03\u201d\u9009\u9879\u5361\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 Publish page, choose Prerequisites.&#8217;&gt;\u5728\u201c\u53d1\u5e03\u201d\u9875\u4e0a\uff0c\u9009\u62e9\u201c\u7cfb\u7edf\u5fc5\u5907\u201d\u3002\u00a0 \u9009\u62e9\u6240\u9700 .NET framework \u7248\u672c\uff08\u6216 .NET framework 4 \u66f4\u65b0\uff09\u4f5c\u4e3a\u7cfb\u7edf\u5fc5\u5907\u7ec4\u4ef6\u3002<\/li>\n<li>Solution Explorer, choose the setup project.&#8217;&gt;\u82e5\u8981\u521b\u5efa\u5b89\u88c5\u9879\u76ee\u7684\u4f9d\u8d56\u9879\uff0c\u8bf7\u5728\u201c\u89e3\u51b3\u65b9\u6848\u8d44\u6e90\u7ba1\u7406\u5668\u201d\u4e2d\uff0c\u9009\u62e9\u6b64\u5b89\u88c5\u9879\u76ee\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 Project, Properties, Prerequisites.&#8217;&gt;\u5728\u83dc\u5355\u680f\u4e0a\uff0c\u4f9d\u6b21\u9009\u62e9\u201c\u9879\u76ee\u201d\u3001\u201c\u5c5e\u6027\u201d\u3001\u201c\u7cfb\u7edf\u5fc5\u5907\u7ec4\u4ef6\u201d\u3002\u00a0 \u9009\u62e9\u6240\u9700 .NET Framework \u7248\u672c\u4f5c\u4e3a\u7cfb\u7edf\u5fc5\u5907\u7ec4\u4ef6\u3002<\/li>\n<\/ul>\n<p>.NET Framework Deployment Guide for Developers.&#8217;&gt;\u6709\u5173\u90e8\u7f72 .NET Framework \u5e94\u7528\u7a0b\u5e8f\u7684\u66f4\u591a\u4fe1\u606f\uff0c\u8bf7\u53c2\u89c1 .NET Framework \u90e8\u7f72\u6307\u5357\uff08\u9488\u5bf9\u5f00\u53d1\u4eba\u5458\uff09\u3002<\/p>\n<\/div>\n<h3>\u90e8\u7f72\u57fa\u4e8e Silverlight \u7684\u5e94\u7528\u7a0b\u5e8f<\/h3>\n<div id=\"collapseableSection10\">\n<p>\u90e8\u7f72\u5f15\u7528 \u53ef\u79fb\u690d\u7c7b\u5e93 \u7a0b\u5e8f\u96c6\u7684\u57fa\u4e8e Silverlight \u7684\u5e94\u7528\u7a0b\u5e8f\u65f6\uff0c\u60a8\u5fc5\u987b\u786e\u4fdd\u8be5\u5e94\u7528\u7a0b\u5e8f\u6240\u9700\u7684\u6700\u4f4e\u8fd0\u884c\u65f6\u7248\u672c\u5339\u914d\u5176\u76ee\u6807\u7248\u672c\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 \u5982\u679c\u9762\u5411\u7684\u662f Silverlight 4\uff0c\u5219\u7248\u672c\u5fc5\u987b\u662f 4.0.60129.0 \u6216\u66f4\u9ad8\u7248\u672c\u3002\u00a0 &amp;lt;param name=&#8221;minRuntimeVersion&#8221; value=&#8221;4.0.60129.0&#8243; \/&amp;gt; in the webpage that hosts the Silverlight-based app, as follows:&#8217;&gt;\u901a\u8fc7\u5728\u627f\u8f7d\u57fa\u4e8e Silverlight \u7684\u5e94\u7528\u7a0b\u5e8f\u7684\u7f51\u9875\u4e2d\u5305\u62ec\uff0c\u53ef\u8bbe\u7f6e &lt;param name=&#8221;minRuntimeVersion&#8221; value=&#8221;4.0.60129.0&#8243; \/&gt; \u53c2\u6570\u503c\u3002<\/p>\n<div id=\"code-snippet-7\">\n<div>\n<div dir=\"ltr\">XAML<\/div>\n<\/div>\n<div>\n<div id=\"CodeSnippetContainerCode_7ac5f405-a138-4db2-964b-dd42477cbc1e\" dir=\"ltr\">\n<div>\n<pre>&lt;div\u00a0id=\"silverlightControlHost\"&gt;\n    &lt;object\u00a0data=\"data:application\/x-silverlight-2,\"\u00a0\n           type=\"application\/x-silverlight-2\"\u00a0width=\"100%\"\u00a0height=\"100%\"&gt;\n    &lt;param\u00a0name=\"source\"\u00a0value=\"ClientBin\/SilverlightApplication.xap\"\/&gt;\n    &lt;param\u00a0name=\"onError\"\u00a0value=\"onSilverlightError\"\u00a0\/&gt;\n    &lt;param\u00a0name=\"background\"\u00a0value=\"white\"\u00a0\/&gt;\n    &lt;param\u00a0name=\"minRuntimeVersion\"\u00a0value=\"4.0.60129.0\"\u00a0\/&gt;\n    &lt;param\u00a0name=\"autoUpgrade\"\u00a0value=\"true\"\u00a0\/&gt;\n    &lt;a\u00a0href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=149156&amp;v=4.0.50826.0\"\u00a0\n             style=\"text-decoration:none\"&gt;\n      &lt;img\u00a0src=http:\/\/go.microsoft.com\/fwlink\/?LinkId=161376\n             alt=\"Get\u00a0Microsoft\u00a0Silverlight\"\u00a0style=\"border-style:none\"\/&gt;\n    &lt;\/a&gt;\n  &lt;\/object&gt;\n   &lt;iframe\u00a0id=\"_sl_historyFrame\"\u00a0\n              style=\"visibility:hidden;height:0px;width:0px;border:0px\"&gt;\n   &lt;\/iframe&gt;\n&lt;\/div&gt;<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<h3>\u53ef\u79fb\u690d\u7c7b\u5e93\u4e2d\u7684 API \u5dee\u5f02<\/h3>\n<div id=\"collapseableSection11\">\n<p>\u4e3a\u4e86\u4f7f\u53ef\u79fb\u690d\u7c7b\u5e93\u7a0b\u5e8f\u96c6\u5728\u6240\u6709\u652f\u6301\u7684\u5e73\u53f0\u4e2d\u517c\u5bb9\uff0c\u7a0d\u5fae\u66f4\u6539\u4e86\u53ef\u79fb\u690d\u7c7b\u5e93\u4e2d\u7684\u90e8\u5206\u6210\u5458\u3002\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 API Differences in Portable Class Library.&#8217;&gt;\u6709\u5173\u5bf9\u54ea\u4e9b\u6210\u5458\u8fdb\u884c\u4e86\u66f4\u6539\u4ee5\u53ca\u8fdb\u884c\u4e86\u600e\u6837\u7684\u66f4\u6539\u7684\u8be6\u7ec6\u4fe1\u606f\uff0c\u8bf7\u53c2\u89c1\u53ef\u79fb\u690d\u7c7b\u5e93\u4e2d\u7684 API \u5dee\u5f02\u3002<\/p>\n<p>\u539f\u6587\u8fde\u63a5: <a href=\"http:\/\/msdn.microsoft.com\/zh-cn\/library\/gg597391(v=vs.110).aspx#feedback\">http:\/\/msdn.microsoft.com\/zh-cn\/library\/gg597391(v=vs.110).aspx#feedback<\/a><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>(\u76f8\u5173\u53c2\u9605)\u53ef\u79fb\u690d\u7c7b\u5e93 &#8211; \u00a0http:\/\/msdn.microsoft.com\/zh-cn\/li &hellip; <a href=\"https:\/\/www.bohu.net\/blog\/8568\/\" class=\"more-link\">\u7ee7\u7eed\u9605\u8bfb<span class=\"screen-reader-text\">\u201c\u4f7f\u7528 .NET Framework \u7684\u8de8\u5e73\u53f0\u5f00\u53d1\u201d<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,23],"tags":[50,51,98,160,402,513,611],"class_list":["post-8568","post","type-post","status-publish","format-standard","hentry","category-net","category-23","tag-net","tag-net-framework-4-5","tag-c","tag-framework","tag-visual-studio","tag-513","tag-611"],"_links":{"self":[{"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/posts\/8568","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/comments?post=8568"}],"version-history":[{"count":2,"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/posts\/8568\/revisions"}],"predecessor-version":[{"id":9857,"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/posts\/8568\/revisions\/9857"}],"wp:attachment":[{"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/media?parent=8568"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/categories?post=8568"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bohu.net\/blog\/wp-json\/wp\/v2\/tags?post=8568"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}