中国区 Azure 应用程序开发说明
1.文档简介
微软公司为其在境外由微软运营的 Azure 服务(以下简称为 “境外 Azure”),创建和部署云应用程序,提供了相应工具。
在中国,由世纪互联运营的 Microsoft Azure (以下简称为 “中国区 Azure”)是独立的服务平台,由世纪互联公司提供并运营,其数据中心位于中国大陆(不包括香港特别行政区、澳门特别行政区和中国台湾地区)。因此,创建和部署应用程序时,开发人员需先了解中国区 Azure 和境外 Azure 的主要区别,然后再设置编程环境,编写应用程序,部署在中国托管的服务。
本文档概述了这两种服务的区别,并为中国 Azure 门户提供补充信息。同时,官方信息也会通过多个途径发布,例如 Azure 海报以及博客。本文目标读者为在中国部署、托管数据中心的合作伙伴及开发人员。
有关中国区 Azure 服务功能的更新,请访问中国 Azure 门户。有关当前 Azure 内容信息,请参阅本文档附录。
2.开发人员指南
目前微软公司提供的大部分英文技术文档中,应用程序都针对境外 Azure 开发,而非中国区 Azure,因此开发人员必须了解两者主要区别:
首先,两者存在功能差异,境外 Azure 的某些功能在中国不可用。
其次,中国区 Azure 与境外 Azure 的服务功能存在操作差异,因此使用为境外 Azure 编写的英文文档时,开发人员应该根据需要,自定义示例代码和步骤。
3.中国数据中心
目前,中国区 Azure 有两个数据中心,在位置字段中显示为“中国北部”和“中国东部”。
4.在 Azure 上创建应用程序的区别
在中国区 Azure 上开发应用程序与在境外 Azure 上开发的主要区别在于,中国区 Azure 端点地址有不同的 URI。 例如,Azure 和 SQL 数据库 URI 通常以 windows.net 结尾。 URI 端点不同时,开发人员必须能够识别,然后配置所需的工具和应用程序,并使用适合的 URI。
5.设置开发计算机
Visual Studio 2015 支持在中国区 Azure 上开发,使用 Visual Studio 2015 update 3。
使用 Visual Studio 2015,连接中国区 Azure
步骤如下:
1.请使用以下注册表文件:
Azure.reg
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\VSCommon\ConnectedUser]
"AadInstance"="https://login.chinacloudapi.cn/"
"adaluri"="https://management.core.chinacloudapi.cn"
"AzureRMEndpoint"="https://management.chinacloudapi.cn"
"AzureRMAudienceEndpoint"="https://management.core.chinacloudapi.cn"
"EnableAzureRMIdentity"="true"
"GraphUrl"="graph.chinacloudapi.cn"
若要将 Reg 值返回境外 Azure,请使用此处的注册表文件:
TargetProduction.reg
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\VSCommon\ConnectedUser]
"Uri"=-
"AadInstance"=-
"adaluri"=-
"AzureRMEndpoint"=-
"AzureRMAudienceEndpoint"=-
"EnableAzureRMIdentity"=-
"GraphUrl"=-
"AadApplicationTenant"=-
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\14.0\MicrosoftAzureServices]
"Resource Management Audience Endpoint"=-
"Service Management Endpoint"=-
2.双击 Azure.reg 文件,同意弹出信息,允许注册表值更改;
3.注册表值更改后,Visual Studio 的登录信息连接到中国区 Azure 服务。
使用 Visual Studio 2017,连接中国区 Azure
Visual Studio 2017 刚刚发布,我们引入了新的方式来连接到中国区 Azure 服务。
步骤如下:
新建一个 JSON 文件 AadProvider.Configuration.json,文件内容如下:
{
"AuthenticationQueryParameters": null,
"AsmEndPoint": "https://management.core.chinacloudapi.cn",
"Authority": "https://login.chinacloudapi.cn/",
"AzureResourceManagementEndpoint": "https://management.chinacloudapi.cn/",
"AzureResourceManagementAudienceEndpoints": [ "https://management.core.chinacloudapi.cn/" ],
"ClientIdentifier": "872cd9fa-d31f-45e0-9eab-6e460a02d1f1",
"EnvironmentName": "Mooncake",
"GraphEndpoint": "https://graph.chinacloudapi.cn",
"MsaHomeTenantId": "f577cd82-810c-43f9-a1f6-0cc532871050",
"NativeClientRedirect": "urn:ietf:wg:oauth:2.0:oob",
"PortalEndpoint": "http://manage.windowsazure.cn",
"ResourceEndpoint": "https://management.core.chinacloudapi.cn/",
"ValidateAuthority": true,
"VisualStudioOnlineEndpoint": "https://app.vssps.visualstudio.com/",
"VisualStudioOnlineAudience": "499b84ac-1321-427f-aa17-267ca6975798"
}
连接到中国区 Azure 服务
1.确保已登出并关闭 Visual Studio。
2.删除 %temp%\servicehub 文件夹(详细路径为 C:\Users\%USERPROFILE%\AppData\Local\Temp\servicehub)。
3.把前面新建的 JSON 文件 (AadProvider.Configuration.json) 拷贝到 %localappdata%\.IdentityService\AadConfigurations(详细路径为 C:\Users\%USERPROFILE%\AppData\Local\.IdentityService\AadConfigurations, AadConfigurations 文件夹可能不存在,需要手动创建)。
4.重启 VS 并添加中国 Azure 账户即可。
切换回 Global Azure
1.确保已登出并关闭 Visual Studio。
2.删除文件夹。%localappdata%\.IdentityService\AadConfigurations
3.重启 VS 即可连接 Global Azure。
6Java 用户使用中国区 Azure
Java 用户使用 Eclipse 或 IntelliJ,连接中国区 Azure
目前需要开发者使用 Azure CLI 生成认证文件,在 Eclipse 或 IntelliJ 中选择基于文件的方式登陆,并上传此认证文件,即可完成连接 ( 参考 Azure SDK 相关页 )。
步骤如下:
1.请首先安装 Azure CLI,版本要求 2.0 及以上。
2.使用 Azure CLI 生成认证文件并保存至本地。
a. 使用 az cloud set --name AzureChinaCloud 连接中国区 Azure。
b. 使用 az login -u <account email> -p <account password> 替换其中的账号和密码,登陆 Azure。
c. 如果在中国区 Azure 有多个订阅账户 Subscription,使用 az account set --subscription <subscirption name> 选择用来生成认证信息的订阅账户。
d. 使用以下命令,生成认证文件 my.azureauth 并保存于本地。 curl -L https://raw.githubusercontent.com/Azure/azure-sdk-for-java/master/tools/authgen.py | python > my.azureauth
3.在 Eclipse 或 IntelliJ 中,选择基于文件的方式登陆,并上传步骤 2 中生成的认证文件。
a. 请确认已在 Eclipse 或 IntelliJ 中安装或更新至最新版本的 Azure Toolkit 插件。
b. 在 Azure Sign In 窗口选择 Automated 作为登陆方式,并上传步骤 2 中生成的认证文件 my.azureauth。

c. 点击登陆,即可连接中国区 Azure。如遇问题,可在 Azure Toolkit 相关页提出并标记 Mooncake 标签。
7.实用场景示例
云浏览器
1.按照说明输入认证信息;                                                                                                                                                                                                                                          
2.输入登录信息;                                                                                                                                                                                                                                                         
3.从 Cloud Explorer 查看中国区 Azure 订阅中的资源。                                                                                                                                                                                          
发布 Web 应用程序
1.单机右键菜单,选择 “发布” 对话框;                                                                                                                                                                                                             
2.选择 Microsoft Azure App Service;                                                                                                                                                                                                                     
3.从帐户选择器中选择 Azure 帐户;                                                                                                                                                                                                                          





4.编辑模板参数,继续部署。
其他功能的步骤与此类似。
8.中国区 Azure 资源端点URI (供应用程序代码使用)
中国区 Azure 的 URI 与境外 Azure 的 URI 存在差异。 用户需确保,在应用程序代码和配置文件使用适当字符串的前提下,再与中国区 Azure 端点连接。 请注意,如果 Visual Studio 连接到中国区 Azure 订阅,Visual Studio 生成的连接字符串会自动使用中国区 Azure URI,连接每个资源。
端点映射
下表指导用户将境外 Azure 资源端点映射到中国特定端点。
| 服务类型 | 在境外由微软运营的 Microsoft Azure URI | 由世纪互联运营的 Microsoft Azure URI | 
|---|---|---|
| Azure - 常规 | *.windows.net | *.chinacloudapi.cn | 
| Azure - 计算 | *.cloudapp.net | *.chinacloudapp.cn | 
| Azure - Service Fabric Cluster | *.cloudapp.azure.com | *.cloudapp.chinacloudapi.cn | 
| Azure - 存储 | 
 *.blob.core.windows.net *.queue.core.windows.net *.table.core.windows.net *.file.core.windows.net  | 
 *.blob.core.chinacloudapi.cn *.queue.core.chinacloudapi.cn *.table.core.chinacloudapi.cn *.file.core.chinacloudapi.cn  | 
| Azure - 服务管理 | https://management.core.windows.net | https://management.core.chinacloudapi.cn | 
| Azure - 资源管理器 (ARM) | https://management.azure.com | https://management.chinacloudapi.cn | 
| SQL 数据库 | *.database.windows.net | *.database.chinacloudapi.cn | 
| Azure - 管理门户 | 
 http://manage.windowsazure.com https://portal.azure.com  | 
 https://manage.windowsazure.cn https://portal.azure.cn  | 
| SQL Azure 数据库管理 API | https://management.database.windows.net | https://management.database.chinacloudapi.cn | 
| 服务总线 | *.servicebus.windows.net | *.servicebus.chinacloudapi.cn | 
| ACS | *.accesscontrol.windows.net | *.accesscontrol.chinacloudapi.cn | 
| HDInsight | *.azurehdinsight.net | *.azurehdinsight.cn | 
| MySQL Paas | - | *.mysqldb.chinacloudapi.cn | 
| Azure PowerShell Login (Classic, 旧的 Azure 服务管理) | Add-AzureAccount | Add-AzureAccount -Environment AzureChinaCloud | 
| Azure PowerShell Login (Azure 资源管理) | Add-AzureRmAccount | Add-AzureRmAccount -EnvironmentName AzureChinaCloud | 
| AAD | *.onmicrosoft.com | *.partner.onmschina.cn | 
| AAD PowerShell Login | Connect-msolservice | Connect-msolservice -AzureEnvironment AzureChinaCloud | 
| AAD Login | https://login.windows.net | https://login.chinacloudapi.cn | 
| AAD Graph API | https://graph.windows.net | https://graph.chinacloudapi.cn | 
| Azure 认知服务 | https://api.projectoxford.ai/face/v1.0 | https://api.cognitive.azure.cn/face/v1.0 | 
| SQL 数据库导入/导出服务映射端点 | 
 1. 中国东部:https://sh1prod-dacsvc.chinacloudapp.cn/dacwebservice.svc 2. 中国北部:https://bj1prod-dacsvc.chinacloudapp.cn/dacwebservice.svc  | 
|
| Power BI Embedded | https://api.powerbi.com | https://api.powerbi.cn | 
| Power BI Embedded | https://embedded.powerbi.com | https://embedded.powerbi.cn | 
| O365 | https://login.microsoftonline.com | https://login.partner.microsoftonline.cn | 
| Device Login | https://aka.ms/devicelogin | https://aka.ms/deviceloginchina 或者 https://login.chinacloudapi.cn/common/oauth2/deviceauth | 
| Documentdb | documents.azure.com | documents.azure.cn | 
| Traffic Manager | *.trafficmanager.net | *.trafficmanager.cn | 
| Media Services resource | https://rest.media.azure.net | https://rest.media.chinacloudapi.cn | 
| Media Services Rest API | https://accountname.restv2.<location>.media.azure.net/api/ | https://accountname.restv2.<location>.media.chinacloudapi.cn/api/ | 
存储端点
开发人员必须使用自定义存储端点。 默认设置指向 *.core.windows.net,其中 * 随着用户应用程序和存储位置的不同而不同。
例如,在 Cloud Services 应用程序的服务配置文件(.cscfg)中,设置自定义数据连接字符串,指向中国区 Azure 的 blob,队列和表存储 URI。 以下代码为自定义端点的示例,其中 <AccountKey> 变量必须由特定的存储帐户键替换。 字符串 mystorageaccount 是在订阅下创建的存储帐户示例。
<Setting name="DataConnectionString"
value="BlobEndpoint=https://mystorageaccount.blob.core.chinacloudapi.cn/;QueueEndpoint=https://mystorageaccount.queue.core.chinacloudapi.cn/;TableEndpoint=https://mystorageaccount.table.core.chinacloudapi.cn/;AccountName=mystorageaccount;AccountKey=<AccountKey> " />
在 Visual Studio 中创建自定义端点
用户可通过 Azure 云服务应用程序,为连接字符串创建自定义端点:
打开含一个或多个角色的 Azure 解决方案;
右键单击 Solution Explorer 中的任意角色,弹出该角色的配置;
单击 Settings;
单击 Add Setting;
为设置键入名称;
选择连接字符串的类型;
单击…弹出 Storage Account Connection String 对话框;
选择 Enter storage account credentials;
输入正确的存储帐户名和密钥;
选择 Use custom endpoints,然后为 blob、表和队列端点输入正确的 https 字符串;
单击 OK。
Visual Studio 在服务配置文件中创建自定义存储端点,开发人员可以从角色代码中使用此存储端点。
以下代码通过使用为中国区 Azure 特定的自定义 URL,以编程方式连接到存储帐户。
CloudStorageAccount Account = new CloudStorageAccount(
new StorageCredentialsAccountAndKey(ACCOUNTNAME, ACCOUNTKEY),
new Uri("http://ACCOUNTNAME.blob.core.chinacloudapi.cn/"),
new Uri("http://ACCOUNTNAME.queue.core.chinacloudapi.cn/"),
new Uri("http://ACCOUNTNAME.table.core.chinacloudapi.cn/")
);
CloudBlobClient BlobClient = Account.CreateCloudBlobClient();
9.Azure 云服务应用程序中的端口绑定
端口绑定同样使用以 .cloudapp.net 结尾的 DNS 名称。用户必须更改这些名称,指向 .chinacloudapp.cn。以下显示了包括端口说明的部分服务定义文件:
<Sites>
   <Site name="MySite" physcalDirectory="..\WebSite1">
       <Bindings>
           <Binding name="My" endpointName="HttpIn" hostHeader="WebSite1.mysite.Chinacloudapp.cn" />
       </Bindings>
   </Site>
   <Site name="Web">
       <Bindings>
               <Binding name="HttpIn" endpointName="HttpIn" />
       </Bindings>
   </Site>
</Sites>
10.连接 SQL 数据库服务器
SQL 数据库服务器名称将由 *.database.windows.net 更改为 *.database.chinacloudapi.cn。 所有客户端应用程序或工具都必须使用新名称命名其连接字符串,连接到数据库。 对于未在中国区 Azure 运行的应用程序,可参照 SQL 数据库服务器的值,该值可以是服务定义文件中的 DataConnectionString 值,或 .NET 其它配置文件中的值。 例如:
<configuration>
   <connectionStrings>
       <add name="SQLAzure" connectionString="Server=tcp:yourserver.database.chinacloudapi.cn,1433;
       Database=Test;User ID=login@server;Password=yourPassword;
       Trusted_Connection=False;Encrypt=True;"/>
   </connectionStrings>
</configuration>
11.Active Directory 和服务总线
Active Directory
Azure Active Directory(AAD)可以为本地部署和云应用程序提供身份和访问功能。开发人员利用 AAD 功能,可为企业应用程序和软件即服务(SaaS)供应商实现单点登录和单点注销;可通过使用图形 API 查询和管理云目录对象;还可以与本地 Active Directory 整合,将目录数据同步到云端。
中国区 Azure 包含 Azure AD。然而从设计角度讲,仍存在一些影响开发人员体验的差异,以下会展开介绍。
中国区 Azure 是个自定义产品,虽然与境外 Azure 有许多共同特性,但自定义仍会导致以下差异,对开发人员使用 AAD 造成影响:
中国区 Azure 不包含访问控制(Access Control)命名空间。要集成应用程序以及与 Azure 身份验证服务同步的目录,需要使用 Azure 中的 Active Directory。在 Azure 经典管理门户中,单击" Active Directory”。
ACS 管理门户仅适用于服务总线命名空间。
除了这些自定义带来的差异,中国区 Azure 中的 Azure AD 设计与境外 Azure 全部一致。
Note
中国区 Azure 在预览期间,其创建的访问控制命名空间既不能操作,也不能访问。 但是,类似的功能可在 Azure 管理门户的 Active Directory 中使用。
服务总线配置
如果使用共享访问签名(SAS)连接服务总线,只需在项目配置文件中更改端点即可。
如果使用访问控制服务(ACS)连接服务总线,可以采取以下任一选项,将使用服务总线的应用程序重定向到特定端点:
选项 1:使用环境变量重定向单个或全部应用程序。
选项 2:使用 ServiceBus.config 文件重定向单个应用程序。
选项 3:使用 ServiceBus.config 文件重定向全部应用程序。
如果 EXE 文件或工作人员角色处于运行状态,任一选项均可用。 如果使用 Web 角色,仅选项 3 可用。
无论选择哪种选项,端点名称都将按照下表进行更改。
| 服务总线端点 | 等效的中国 Azure 服务总线端点 | 
| servicebus.windows.net | servicebus.chinacloudapi.cn | 
| accesscontrol.windows.net | accesscontrol.chinacloudapi.cn | 
选项1:使用环境变量进行重新定向
1.考虑变量设置的级别。 对于整个计算机、单个用户或运行单个应用程序的环境,其环境变量设置的含义都不相同。
2.以适当的级别设置以下环境变量:
RELAYHOST=servicebus.chinacloudapi.cn
STSHOST=accesscontrol.chinacloudapi.cn
RELAYENV=Custom
Warning
通过 csdef 文件中的 <environment> 标记为 Web 角色添加环境变量时,此选项不可用。 Web 角色在 w3wp.exe 的上下文中运行。 环境变量不会传播到 w3wp.exe 环境。 请参阅 Web 角色的选项 3。
选项 2:使用 ServiceBus.config 文件重定向单个应用程序:
1.创建如下的 ServiceBus.config 文件,其中包含适当的主机信息。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
   <Microsoft.ServiceBus>
       <relayHostName>servicebus.chinacloudapi.cn</relayHostName>
       <stsHostName>accesscontrol.chinacloudapi.cn</stsHostName>
   </Microsoft.ServiceBus>
</configuration>
2.将 ServiceBus.config 文件与服务总线 / ACS应用程序的 .exe 文件放置在同一目录中。
此选项不适用于 Azure 云服务 Web 角色,因为它们在 w3wp.exe 的上下文中运行。 因此,系统在 %Windir%\ System32 \ inetsrv \ 中查找 servicebus.config 文件时,该文件不存在。
选项 3:使用 ServiceBus.config 文件重定向全部应用程序:
1.在 .NET Framework 配置目录中查找现有的 ServiceBus.config 文件。 .NET Framework 配置目录取决于 32 位或 64 位的操作系统版本,以及已安装的框架版本,以下为常用位置。
| Microsoft .NET Framework 版本 | 操作系统版本 | 目录 | 
| 2.0 至 3.5 | 32 位 | %Windir%\Microsoft.NET\Framework\v2.0.50727\CONFIG | 
| 2.0 至 3.5 | 64 位 | %Windir%\Microsoft.NET\Framework64\v2.0.50727\CONFIG | 
| 4.0 | 32 位 | %Windir%\Microsoft.NET\Framework\v4.0.30319\Config | 
| 4.0 | 64 位 | %Windir%\Microsoft.NET\Framework64\v4.0.30319\Config | 
2.如果目录中存在现有的 ServiceBus.config 文件,必须编辑该文件,添加选项 2(使用 ServiceBus.config 重定向单个应用程序)列出的 XML 配置。 如果该配置添加后,与 ServiceBus.config 文件中的现有信息产生冲突,则不能使用此选项。 必须使用选项 1 或选项 2。
开发人员只有了解角色使用的框架,才能指向特定的框架目录。 但是,以下脚本概括了使用 Web 角色的复制过程。 如果 servicebus.config 文件存在,该脚本会将此文件复制到每个 .NET 目录中。
@echo off
pushd .
cd %windir%\Microsoft.Net\Framework64\
REM set copylocal=true on servicebus.config so its present in bin dir
for /f %%i in ('dir /s /b config') do copy /y %~dp0servicebus.config %%~fi
popd
12.使用服务管理 API
通过服务管理 API,开发人员可以对 Azure 中运行的托管服务进行部署管理。 事实上,境外 Azure 和中国区 Azure 的管理门户都使用服务管理 API。
境外 Azure 编写代码使用的路径为:https://management.core.windows.net。中国区 Azure 编写代码使用的路径为:https://management.core.chinacloudapi.cn。
13.重定将自定义域名定位到中国区 Azure 的托管服务中
如果用户使用的自定义域名被转发到境外 Azure 中运行的托管服务,并将该托管服务移至中国区 Azure,必须更新转发域,指向新的中国特定终端点。
例如,如果要将 www.contoso.com 重定向到运行在 contoso.cloudapp.net 的 web 角色中,那么现在就必须将其重定向到 contoso.chinacloudapp.cn 中。
14.使用 Azure 诊断
Azure 诊断通过使用开发计算机上的本地存储或中国区 Azure 存储帐户,存储诊断信息。
在* .cscfg 文件中添加以下配置信息:
<ConfigurationSettings>
   <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="<YourStorageString>" />
</ConfigurationSettings>
<YourStorageString> 的值是个自定义端点,将URI并入中国区 Azure。
为 HTTPS 端点重新发布证书
15.使用自定义域名时无需更改证书。
如果任一现有应用程序使用 HTTPS 端点,并将证书绑定到 https://*.cloudapp.net(其中 * 是服务的名称),则必须为*.chinacloudapp.cn 重新发布证书。 在中国部署服务时,必须使用这些新证书。
16.使用 Azure PowerShell
在 PowerShell 控制台键入以下命令,登录 Azure China Cloud:
ASM 模式:
Add-AzureAccount -Environment AzureChinaCloud
ARM 模式
Login-AzureRmAccount -EnvironmentName AzureChinaCloud
17.使用 Azure CLI
Azure CLI 1.0
在命令提示符下键入以下命令,登录 Azure China Cloud:
azure
login
-e
AzureChinaCloud
Azure CLI 2.0
在命令提示符下键入以下命令,登录 Azure China Cloud:
az
cloud
set
--name
AzureChinaCloud
az
login
18.为 Node.js 使用 Azure SDK
如果要在中国区 Azure 中使用 SDK,需从管理门户或 CLI 中提供连接字符串。
存储、服务总线和通知总线
存储、服务总线和通知中心都接受各自的连接字符串,可通过管理门户或使用 CLI 获取该值。
var tableService = azure.createTableService(storageConn);
var blobService= azure.createBlobService(storageConn);
var queueService = azure.createQueueService(storageConn);
var serviceBusService = azure.createServiceBusService(sbConn);
var notificationHubService = azure.createNotificationHubService(nhConn);
SQL
要管理 SQL 数据库服务器,可以使用此配置:
var sqlManagementService = azure.createSqlManagementService(subscriptionId, authentication, hostOptions);
19.附录:Azure 的内容库
以下列出了 Azure 当前可用的所有内容资产,并指明该资产是否专门针对中国区 Azure。
| 资产 | 内容是否专为中国创建 | 说明 | 
| azure.microsoft.com | 否 | 在境外由微软运营的 Microsoft Azure 官网。 | 
| azure.cn | 是 | 由世纪互联运营的 Microsoft Azure 官网 | 
| 境外客户案例 | 否 | http://azure.microsoft.com/zh-cn/case-studies/ | 
| 中国客户案例 | 是 | https://www.azure.cn/partnerancasestudy/case-studies/ | 
| P&P 丛书 | 否 | 
  | 
| MVP 的著作 | 否 | |
| MSDN 库 | 是/否 | https://msdn.microsoft.com/library/azure/ | 
| Azure 团队的博客 | 是/否 | http://blogs.msdn.com/b/azchina/ | 
| MSDN Azure 门户 | 否 | http://msdn.microsoft.com/zh-cn/ff380142 | 
| MSDN 杂志 | 否 | |
| 虚拟实验室 | 否 | |
| 视频 | 否 | 第 9 频道的视频讨论境外服务,与优酷上的中国视频 (http://www.youku.com/playlist_show/id_19321941.html)相同 | 
| Azure 培训包 | 否 | Github 中的本地化培训包用于境外服务 | 
| MSDN 代码库 | 否 | http://code.msdn.microsoft.com/windowsazure/ | 
| Github | 否 | 仅在此处托管 azure.cn 的英文内容,不提供本地化内容 | 
中国区 Azure 应用程序开发说明的更多相关文章
- 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序
		
原文 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 在 Visual Studio 2010 中开发和部署 Windows Azure 应用程序 Jim ...
 - 安装 Visual Studio,连接中国区 Azure
		
中国数据中心 目前,中国区 Azure 有两个数据中心,在位置字段中显示为“中国北部”和“中国东部”. 在 Azure 上创建应用程序的区别 在中国区 Azure 上开发应用程序与在境外 Azure ...
 - Azure开发者任务之三:理解Azure应用程序(上)
		
作为Windows Azure的托管服务被设计和开发的应用程序由这两部分组成: 1,托管代码 2,XML配置文件 托管代码对应不同的角色 XML文件对应不同的配置设置 我们可以看一下下面这张图,它详细 ...
 - 无责任Windows Azure SDK .NET开发入门篇二[使用Azure AD 进行身份验证-2.2身份验证开发]
		
2.2身份验证开发 在我们的案例中,我们是用户通过Web应用程序进行身份识别. 上面的图示说明了如下的一些概念 l Azure AD 是标识提供程序,负责对组织的目录中存在的用户和应用程序的标识进行验 ...
 - 无责任Windows Azure SDK .NET开发入门(二):使用Azure AD 进行身份验证
		
<編者按>本篇为系列文章,带领读者轻松进入Windows Azure SDK .NET开发平台.本文为第二篇,将教导读者使用Azure AD进行身分验证.也推荐读者阅读无责任Windows ...
 - 程序开发常用第三方类库一览表(VendorLib)
		
以下是自己开发过程中用到的第三方类库,记录下来方便查阅 ------------------------------------------------------------------------ ...
 - (译)Windows Azure:移动后端开发的主要更新
		
Windows Azure:移动后端开发的主要更新 这周我们给Windows Azure释出了一些很棒的更新,让云上的移动应用开发明显的简单了.这 些新功能包括: 移动服务:定制API支持移动服务:G ...
 - 微软Azure区块链开发工具包三大功能详解
		
2018年11月15日,微软宣布了Azure区块链开发工具包,它基于微软的无服务器技术构建,并且利用微软和第三方SaaS,完美集成了区块链.该工具包扩展了微软的区块链开发模板和Azure Blockc ...
 - 中国区 Azure 和全球版 Azure:功能对比
		
由世纪互联运营的 Microsoft Azure(文中简称为中国区 Azure)是在中国大陆独立运营的公有云平台,与全球其他地区由微软运营的 Azure (文中简称全球版 Azure)服务在物理上和逻 ...
 
随机推荐
- bzoj2718
			
二分图匹配 首先有个定理:最长反链=最小链覆盖 最小链覆盖可以重复经过点 所以我们不能直接建图 那么我们用floyd判断是否相连 然后建图就行了 #include<bits/stdc++.h&g ...
 - Ubuntu 无法登录 coursera 看视频
			
修改 host 文件 sudo vim /etc/hosts 将下面的内容添加至末尾 52.84.246.72 d3c33hcgiwev3.cloudfront.net
 - iOS 中这些是否熟练掌握——(1)
			
声明:本篇博文是作者原创作品.参考1 参考2 参考3 参考4 参考5 参考6 关于网上一些关于iOS资料,自己通过学习做了一些整理,这里仅仅作为笔记,方便自己学习使用,加深理解. 1.什么是 ...
 - ORM框架SQLAlchemy学习
			
一.基本介绍 以下介绍来自维基百科,自由的百科全书. SQLAlchemy是Python编程语言下的一款开源软件.提供了SQL工具包及对象关系映射(ORM)工具,使用MIT许可证发行. SQLAlch ...
 - Flask_restful 插件实战笔记——基本概念与使用
			
最近在Resetful接口设计上想法还是挺多的,也实现了一些需求!想着整理下Flask_restful插件的基本知识,方便日后的复习! 官方地址:https://flask-restful. ...
 - POJ - 3190 Stall Reservations 贪心+自定义优先级的优先队列(求含不重叠子序列的多个序列最小值问题)
			
Stall Reservations Oh those picky N (1 <= N <= 50,000) cows! They are so picky that each one w ...
 - Codeforces 174B【模拟构造】
			
题意: 给你一个串只有小写字母和点,让你构造前缀是1-8,后缀是1-3长度的文件名: 思路: 那么以"."作为分割点,把字符串都拿出来,然后 首段长度<=8 OK; 中间&l ...
 - 如何将含有byte数据项的结构存入MongoDb
			
我们知道MongoDb不支持byte(BsonType中根本没有定义byte), 但是在实际生产环境中数据结构(特别是远古时代的数据结构)往往包含byte数据项. 这时候无法保存原有的数据结构,一般会 ...
 - tpc-ds99 工具使用
			
安装部署 tpc-ds-99 工具 解压文件 unzip tpc-ds-tool.zip 进入目录 cd v2.3.0/tools 拷贝Makefile文件 cp Makefile.suite Mak ...
 - Eclipse mybatis中XML的自动提示
			
1. 从mybatis-3.1.1.jar中解压出dtd文件 2. 3. 复制红线处内容 4. 将上步中内容粘贴到key中