Flickr.net傻瓜教程(二)
上回书说到如何获得Flickr.net的代码,相信各位看客应该已经获得了,其中包含着两个工程文件,一个是关于winform的;一个是关于web的,而且其中还有一个帮助文档,可见作者非常用心,否则也不会作为Flickr.net的推荐工程了,如果各位细心的话,应该已经知道了如何创建Flickr.net工程和获取photo了。但是大家发现没有,其实还有比作者更简便的方法来应用,作者的方法是适用所有的flickr应用,但是如果我只想实现简单的应用,比如想在我的web中实现图片的搜索,或者实现一个简单的图片搜索引擎,怎末做呢,下面我们分两次课程来详细描述,感兴趣的鼓掌!
一、前期准备:
如果看过下载的文件中的帮助文档的人,应该知道,应用flickr首先要获得一个apiKey,如何获得,请看:
http://www.flickr.com/services/api/keys/apply/ 里面有详细的说明,填写一下就ok了 ,注意注册成功会获得一个apikey 和 密码,注意这个在后面会用到。
二、开始动工:
1.新建网站
2.增加文件夹bin
3.添加引用,浏览,找到下载工程中的flickrnet.dll
4.在页面中使用flickr的命名空间
5.代码:
1using System;
2using System.Data;
3using System.Configuration;
4using System.Web;
5using System.Web.Security;
6using System.Web.UI;
7using System.Web.UI.WebControls;
8using System.Web.UI.WebControls.WebParts;
9using System.Web.UI.HtmlControls;
10using FlickrNet;
11
12public partial class _Default : System.Web.UI.Page
13{
14 protected void Page_Load(object sender, EventArgs e)
15 {
16 PhotoRepeater.DataSource = GetPhotos();
17 PhotoRepeater.DataBind();
18 }
19
20 public PhotoCollection GetPhotos()
21 {
22 try
23 {
24
25 Flickr myFlickr = new Flickr();
26
27 PhotoSearchOptions searchOptions = new PhotoSearchOptions();
28
29 searchOptions.Tags = "奥运";
30 searchOptions.PerPage = 10;
31 Photos myPhotos = myFlickr.PhotosSearch(searchOptions);
32 return myPhotos.PhotoCollection;
33
34 }
35 catch (Exception ex)
36 {
37 Response.Write(ex.Message);
38 return null;
39 }
40 }
41}
6.前台页面:
1<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
2
3<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4
5<html xmlns="http://www.w3.org/1999/xhtml" >
6<head runat="server">
7 <title>无标题页</title>
8</head>
9<body>
10 <form id="form1" runat="server">
11 <div>
12 <asp:Repeater runat="server" ID="PhotoRepeater">
13 <ItemTemplate>
14 <a href="<%# Eval("WebUrl") %>">
15 <img style="border: solid 1px black; margin: 5px; padding: 5px; background-color: #444;"
16 alt="<%# Eval("Title") %>" title="<%# Eval("Title") %>" src="<%# Eval("SquareThumbnailUrl") %>" /></a></ItemTemplate>
17 </asp:Repeater>
18
19 </div>
20 </form>
21</body>
22</html>
23
24
25
26
7.web.config文件
注意apikey放入你申请的值,secret放入这个apikey的密码
1<configuration>
2 <configSections>
3 <section name="flickrNet" type="FlickrNet.FlickrConfigurationManager,FlickrNet"/>
4 </configSections>
5 <flickrNet apiKey="**" secret="**" cacheDisabled="true">
6 </flickrNet>
7
8 <connectionStrings/>
9 <system.web>
10
11
8.运行,OK
9.扩展
可以放置一个输入框,允许输入tag,这样就可以实现根据数据的关键字实现图片的检索;另外前台显示可以用gridview显示等等。下面一个例子我们就打造一个仿造baidu图片搜索的例子,做一个自己的COOL搜索。
Flickr.net傻瓜教程(二)相关推荐
- Flickr.net傻瓜教程(三)--打造自己的图片搜索引擎
首先说两句闲话,谢谢大家的关注,其实我写这个系列文章的初衷是自己想对Open API项目有个了解,Flickr目前也是刚刚接触没几天,虽然以前一直听说过,但是一直没有机会使用,正好借着这次学习的机会系 ...
- 基于Arduino的PS2机械臂遥控小车(L298N)傻瓜教程
基于Arduino的PS2机械臂遥控小车(L298N)傻瓜教程 1.材料 L298N.Arduino板.数据线.舵机(SG90).机械臂.亚克力板.电机.PS2.杜邦线.电池(7.4V).螺丝. 2. ...
- UnityHub 无需登录 傻瓜教程 一键搞定
UnityHub 无需登录 傻瓜教程 一键搞定 前言 一.下载相关的工具 二.选择文件夹路径 总结 版权声明 前言 今天一个组的小姐姐来找我,说她的UnityHub经常要她登录,感觉特别繁琐,问我有没 ...
- C# SuperSocket 手把手教你入门 傻瓜教程---5(探索自定义AppServer、AppSession,Conmmand,用配置文件App.comfig启动服务器)
C# SuperSocket 手把手教你入门 傻瓜教程系列教程 C# SuperSocket 手把手教你入门 傻瓜教程---1(服务器单向接收客户端发送数据) C# SuperSocket 手把手教你 ...
- C# SuperSocket 手把手教你入门 傻瓜教程---3(Telnet服务器和客户端请求处理)
C# SuperSocket 手把手教你入门 傻瓜教程系列教程 C# SuperSocket 手把手教你入门 傻瓜教程---1(服务器单向接收客户端发送数据) C# SuperSocket 手把手教你 ...
- C# SuperSocket 手把手教你入门 傻瓜教程---1(服务器单向接收客户端发送数据)
C# SuperSocket 手把手教你入门 傻瓜教程系列教程 C# SuperSocket 手把手教你入门 傻瓜教程---1(服务器单向接收客户端发送数据) C# SuperSocket 手把手教你 ...
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(二) Cryptography Application Block (高级)
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(二) Cryptography Application Block (高级) 本章介绍的是企业库加密应用程序模块 ...
- Konstrukt PHP REST框架 教程二
Konstrukt PHP REST框架 教程二 入门 - 第2部分 在本教程中,我们假设你已经完成了第一个教程,因为它的基础上产生的代码从该. 谈判的Content-Type 在大多数情况下会发出一 ...
- Mac下Android studio 之NDK配置教程(二)
Mac下Android studio 之NDK配置教程(二) (一)简述 从上一篇NDK配置教程(一) 中,我 简单的阐述了MAC下NDK的基本解压和环境配置步骤. 本节我讲详细描述android s ...
最新文章
- 优胜队伍跑多快?优胜秘笈是什么?直播告诉你
- bat比较有意思的代码_腾讯开源的 Unity全系列 代码逻辑热修复方案--InjectFix
- 【数据结构与算法】之栈与队列的应用和操作
- 理解什么是真正的架构,架构需要的几种思维?
- 西门子数控面板图解_学好四要点让你迅速成为数控机床“操作高手”
- flask blueprint
- Java Math.round()函数小结
- IdHTTP处理HTTP 302遇到的问题
- Windows Server 2008 R2从低版本升级到高版本
- C# 判断输入的字符是不是数字
- 实用主义当道——GitHub 热点速览 Vol.48
- sql盲注特点_sql盲注
- Zabbix5.0监控CenterOS(RPM版)
- 【ROM制作工具】华为UPDATE.APP固件一键解包打包教程
- tmux鼠标配置出现错误unknown option: mode-mouse
- 用计算机名ping得ip,PING命令取得计算机名和IP
- 技术与市场脱钩?90%的程序员都错了!
- Python美股量化交易填坑记录——14c.W底交易机器人(实盘记录)
- 使用HttpClient模拟POST请求
- 488 祖玛游戏 python
热门文章
- asp网上书店系统_Asp.net Core启动流程讲解(一)
- python词频作图_基于Python的词频分析与云图生成
- python图片旋转脚本_Python+OpenCV 实现图片无损旋转90°且无黑边
- ASP.NET Razor – C# 逻辑条件简介
- 第2关:利用栈判断字符串括号是否匹配
- 关于学习Python的一点学习总结(5->切片赋值->sort排序->列表操作)
- retinanet50预训练权重_论文导读|基于注意力机制对齐增强预训练语言模型
- java中局部变量和成员变量_Java中局部变量和成员变量可以转换么?
- liunx防火墙常用命令
- N - Tram POJ - 1847