公告
:本博客为微软云计算中文博客
的镜像博客。
部分文章因为博客兼容性问题
,会影响阅读体验
。如遇此情况,请访问
原博客
。
Windows® Azure
Marketplace (先前名为"Dallas",本博客也写过一篇入门教学"初探Dallas"
)的DataMarket是一个信息市场,简化了发布以及使用各种类型数据的步骤。DataMarket方便开发者和信息工作者发现,购买以及管理所订购的Premium数据。
DataMarket 内的数据的暴露格式为OData
,并对于数据查询提供了2种模式:
本文会简单的介绍一下如何利用Windows Azure Marketplace构建一个Flexible查询的应用。
预备工作:
代码:
步骤1:在Visual Studio中创建新项目
以管理员权限运行Visual Studio
创建新项目
- 1.
新建Visual C# Console应用
。
- 2. 将项目的目标框架选(Target Framework)为.NET Framework 4
。
- 3. 将项目命名为USCrime2006and2007
。
- 4. 点击OK
按钮。
步骤2:为项目添加服务引用
获取服务的根 URL
- 1. 访问Windows Azure Marketplace DataMarket首页
,并以Live ID 登陆。
- 2. 点击My Data
标签页。
- 3. 找到2006 - 2008 Crime in the United States
数据服务。
- 4. 点击该服务列表内右侧的Use
链接。
- 5. 将网页拖至页面中部,点击Details
标签页。
为项目添加服务引用
- 1. 右击步骤1中的项目,选择Add Service Reference...
。
- 2. 将上步的URL输入至对话框的地址栏内。点击Go
按钮。
- 3. 将该服务的命名空间设为DataGovCrimes
。
- 4. 点击OK
按钮。
在代码中添加服务引用
- 1. 打开项目的Program.cs
文件。
- 2. 在文件内加入如下引用语句:
using USCrime2006and2007.DataGovCrimes;
步骤 3:用托管代码来使用数据
创建一个辅助类
- 1. 创建一个公有类,名为
CrimeData
。
- 2. 为该类增加2个私有变量:
- 一个表示服务的根URL。
- 一个存储了服务上下文中服务凭证的服务容器。
class CrimeData
{
private Uri serviceURI;
private datagovCrimesContainer context;
}
- 3. 为
CrimeData
创建一个构造函数。构造函数初始化私有变量以及用户凭证。
class CrimeData
{
private Uri serviceURI;
private datagovCrimesContainer context;
// constructor for the CrimeData class
public CrimeData()
{
serviceURI = new Uri(ROOT_URL);
context = new datagovCrimesContainer(serviceURI);
context.Credentials = new NetworkCredential(USER_ID,
SECURE_ACCOUNT_ID);
}
}
ROOT_URL
是上文所提到的服务的根URL。
USER_ID
是您的 Live ID账户名。
SECURE_ACCOUNT_KEY
是您在DataMarket 内的Account Keys (参考预备工作
章节)。
- 4. 创建一个返回泛型类型为
CityCrime
的泛型列表的共有方法。
class CrimeData
{
private Uri serviceURI;
private datagovCrimesContainer context;
// constructor for the CrimeData class
public CrimeData()
{
serviceURI = new Uri(ROOT_URL);
context = new datagovCrimesContainer(serviceURI);
context.Credentials = new NetworkCredential(USER_ID,
SECURE_ACCOUNT_ID);
}
// -- public method that returns the list of crime data
public IList<CityCrime> GetCrimeData()
{
IEnumerable<CityCrime> query = context.CityCrime.Where(crime => crime.City == "Newport").OrderBy(crime => crime.Year);
try
{
return query.ToList();
}
catch (Exception ex)
{
Console.WriteLine("Error: {0}", ex.Message);
return null;
}
}
}
该查询可以是任何有效的DataMarket LINQ 查询,可以包括可选的where
(Where
) 或者是orderby
(Order By
)方法。
- 5. 在
Main()
函数中用CrimeData
类,以及GetCrimeData()
方法来使用数据,并显示函数返回的结果。
static void Main(string[] args)
{
IList<CityCrime> crimeList; // CityCrime is the entity type returned by the service
CrimeData crimeData = new CrimeData();
crimeList = crimeData.GetCrimeData();
if (crimeList != null)
{
Console.WriteLine("{0,4} {1,-12} {2,-15} {3,10} {4,13}","Year",
"City",
"State",
"Population",
"Violent Crime");
foreach (CityCrime c in crimeList)
Console.WriteLine("{0,4} {1,-12} {2,-15} {3,10} {4,13}", c.Year,
c.City,
c.State,
c.Population,
c.ViolentCrime);
}
Console.Write("Tap any key to exit. ");
Console.ReadKey();
}
- 6. 运行程序,在Console中会显示操作返回的结果。
总结:
我们看到在代码方便对于数据源的使用是非常简单的,开发者可以结合实际应用的需求,轻松的将应用与这些实时的数据源相集成,构建出具有丰富内容的应用来。
参考:http://msdn.microsoft.com/en-us/library/gg312152.aspx
分享到:
相关推荐
Windows Azure 入门教学系列 本教程系列旨在帮助初学者快速入门 Windows Azure 平台,学习如何创建、部署和管理云端应用程序。通过本系列教程,读者将了解 Windows Azure 的基本概念、开发工具和部署流程。 知识点...
“Windows Azure从入门到精通含源代码”这本书很可能包含了实际示例,帮助读者通过实践理解Azure的用法。书中的源代码可能涵盖了如何使用Azure SDK进行开发,以及如何部署和管理应用程序。通过阅读和运行这些代码,...
Azure Kinect 开发入门---加油动作识别 Azure Kinect 是微软推出的一个新一代的人体跟踪和DEPTH sensor,具备高精度的人体跟踪能力和强大的计算能力。通过本示例,我们将了解 Azure Kinect 的基本使用和加油动作...
5. **从本地或托管应用使用云存储**:无论是本地还是托管在其他数据中心的应用,都可以通过网络轻松接入Windows Azure的存储服务,实现数据的统一管理和备份。 **六、开发Windows Azure应用程序** 开发Windows ...
在本文中,我们将深入探讨Windows Azure中的MSMQ(Microsoft Message Queuing)与Queue Storage的集成,以及如何通过具体的示例来理解这一概念。Queue Storage是Windows Azure存储服务的一部分,它提供了一个可伸缩...
### Windows Azure 使用入门:创建虚拟机 #### 一、Windows Azure 虚拟机概述 在探讨如何在 Windows Azure 平台上创建虚拟机之前,我们首先需要了解什么是 Windows Azure 虚拟机以及它为何重要。 **Windows Azure...
《Windows Azure从入门到精通》针对微软的云计算平台windows azure,循序渐进地介绍了如何构建和管理云端的可扩展应用...《Windows Azure从入门到精通》实用性强,操作性强,适合对windows azure感兴趣的所有读者阅读。
### Windows Azure 使用入门:建立自己的网站 #### 一、Windows Azure 中的网站概念 随着互联网技术的发展,网站已经成为企业和组织对外展示形象、提供服务的重要窗口。传统的网站搭建往往需要自行购买服务器、...
本篇文章将深入探讨一个名为"Azure-Samples-azure-sdk-for-go-samples"的开源项目,该项目包含了Azure SDK for Go的示例代码,旨在帮助Go语言开发者更好地理解和运用Azure服务。 Azure SDK for Go是微软Azure为Go...
### Windows Azure 快速入门 —— 为什么选择 Windows Azure? #### Windows Azure 是什么? Windows Azure,作为微软的云服务平台,提供了广泛的服务,旨在帮助企业轻松搭建、部署并管理各种解决方案,几乎能满足...
azure-rest-api-specs, 微软Azure的REST API 规范源代码 Azure REST API 规范描述这个存储库是微软Azure的REST API 规范的规范源。新闻在假期期间,我们将对 Azure REST API 规范知识库进行一些改进:我们将停止合并...
《Windows Azure从入门到精通》是一本全面介绍微软云服务平台Windows Azure的指南,旨在帮助初学者快速理解和掌握Azure的核心概念和技术。通过本书,读者可以深入理解云计算的基础,以及如何利用Azure构建、部署和...
- **数据完整性**:通过SQL Azure的表定义和约束机制,可以强制执行结构化数据的结构,确保数据质量。 ### 4. 图像文件处理与存储 - **需求背景**:设计一个Windows Azure应用,用于处理图像文件,要求支持远程...
4. **Demo 4 - SharePoint 调用自定义的Azure Cloud Service**:更进一步地,本部分将介绍如何在Azure上创建自定义服务,并在SharePoint端通过代码调用该服务。 #### 开发指南 - **业务模型分析**:在开发云应用前...
### Windows Azure 使用入门 第七课:云端存储和管理数据 #### Windows Azure 存储概述 在当今这个数据驱动的时代,随着数据量的爆炸性增长,企业和个人面临着如何有效存储、管理和利用这些数据的巨大挑战。微软的...
azure-c-shared-utility是一个C库,为基本任务(如字符串,列表操作,IO等)提供通用功能。 依存关系 azure-c-shared-utility提供了3种tlsio实现: tlsio_schannel-仅在Windows上运行 tlsio_openssl-取决于正在安装...
`azure-cosmosdb-table-1.0.2`压缩包中的内容可能包括库的源代码、文档、示例代码以及必要的配置文件。解压后,开发者可以通过Python的`setup.py`文件安装这个库,将其集成到自己的项目中。 总结来说,`azure-...
尽管部分内容没有提供具体的技术细节,但从标题“Windows Azure从入门到精通【高清】”来看,该资料应该涵盖了从基础知识到高级应用的各个方面。下面将基于这些信息,构建一系列与Microsoft Azure相关的知识点。 ##...