【发布时间】:2010-12-28 19:05:51
【问题描述】:
为 2007 共享点实施天气 Web 部件的最佳方式是什么。我希望 Web 部件根据用户配置文件设置或 IP 范围自动选择正确的位置。
或者我应该使 webpart 可连接到用户输入位置的另一个 webpart?
我希望得到有关如何执行此操作的指导。
非常感谢,
【问题讨论】:
标签: c# sharepoint-2007 web-parts
为 2007 共享点实施天气 Web 部件的最佳方式是什么。我希望 Web 部件根据用户配置文件设置或 IP 范围自动选择正确的位置。
或者我应该使 webpart 可连接到用户输入位置的另一个 webpart?
我希望得到有关如何执行此操作的指导。
非常感谢,
【问题讨论】:
标签: c# sharepoint-2007 web-parts
可能不需要连接,所有逻辑都可以包含在 web 部件中(可能还有自定义编辑器部件)。如果您让最终用户可以配置 Web 部件,它至少需要是可个性化的。
有些网站(如 Yahoo 天气)具有 javascript API,可根据邮政编码/位置获取天气信息。要获取用户的地理位置,您需要一个 IP 到位置数据库。
您可以使用 MaxMind 的 GeoLite City 免费数据库,它将 IP 地址映射到地理位置。因为它是免费的,所以它不准确到一米,但对于天气我会说足够准确。该数据库每月更新一次,并采用二进制和 csv 格式(因此您可以将 csv 导入 SQL 数据库)。更多信息here。
一旦您有了地理位置,您就可以使用 Yahoo 的天气 API 来获取信息。然后解析结果并设置样式。
P.S. GeoLite City 只是一个例子,那里有类似的产品,这只是我在谷歌搜索时发现的,我与他们没有任何从属关系或类似的东西。
【讨论】:
最简单的方法是简单地添加一个页面查看器 Web 部件,并将其用于链接:
http://www.bing.com/webslices/answer.aspx?q=weather&a=WeatherAnswer&s=Weather&form=IE8WSV
这将显示当前用户的一般 IP 地址区域的天气。如果愿意,您可以自定义链接以包含特定的邮政编码,方法是将“q=weather”链接到“q=weather XXXXX”,其中 XXXXX 是邮政编码。
下一个最简单的方法是使用内容编辑器 Web 部件,然后选择 Google 小工具上的任何天气小工具。在 Google 小工具区域找到您喜欢的内容后,单击“获取代码”,然后将代码复制并粘贴到内容编辑器 Web 部件的“源代码编辑器...”区域。
如果您想要一个完整的免费解决方案,您可以使用 Bamboo Solutions 天气 Web 部件,他们捐赠给 SharePoint 社区工具包项目。
我会发布一个指向该项目的链接,但这里的内置垃圾邮件保护将我限制为每个答案一个链接。谷歌搜索 CKS Weather,你会得到第一次点击的链接。
【讨论】: