日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

校內(nèi)網(wǎng)API的.net版本XiaoNei.Net 1.0(非官方)_.Net教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!

推薦:Asp.net Mvc Framework可以在Controller中使用的Url.Action方法
原本的Url.Action方法是利用RouteCollection來實(shí)現(xiàn)Url的Routing的。 所以這里用一個(gè)擴(kuò)展方法重現(xiàn)一下 以下為引用的內(nèi)容:

校內(nèi)API開放也有一段時(shí)間了,也沒有太關(guān)注,正好新版本的SNS開發(fā)到了API這一塊,正好借鑒一下XiaoNei,F(xiàn)B,MySpace的API。

且聞校內(nèi)API比較有前途,最近的API編程大賽也比較火,而且人氣也較旺

于是順手用了一下校內(nèi)的API,發(fā)現(xiàn)校內(nèi)只提供了php與jsp的API卻并未提供.net。

當(dāng)然也有不少朋友封裝了.net 的API,但我感覺使用上略見復(fù)雜,于是我自己封裝了一下。

DLL文件、源碼、演示下載:http://www.codeplex.com/xn/Release/ProjectReleases.aspx?ReleaseId=16307

Codeplex開源項(xiàng)目 :http://www.codeplex.com/xn/

開始說明:

初始化API的方法如下:

一、最簡單的,頁面繼承XPage類或XMasterPage類


Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

public partial class Friends_get : XPage {
protected void Page_Load(object sender, EventArgs e) {
}
}

二、如果不符合你的條件的話,可以使當(dāng)前頁面實(shí)現(xiàn)IXHandler接口并在調(diào)用 XiaoNeiApi.Init(this)方法

如我要在Asp.net MVC中使用XiaoNei.Net則我用以下代碼讓Controller支持校內(nèi)網(wǎng)的API:


Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

public class HomeController:Controller,IXHandler{
public XiaoNeiApi Api { get; set; }
public HomeController(){
XiaoNeiApi.Init(
this);
}
}

三、如果還是習(xí)慣那種老式的方法也可以,當(dāng)然也可以寫在Page_Load里,個(gè)人習(xí)習(xí)慣,不過我感覺這樣的話代碼真是不少


Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

public class XPage : System.Web.UI.Page{
public XiaoNeiApi Api { get; set; }
protected override void OnInit(EventArgs e) {
base.OnInit(e);
string secret = Request.QueryString["xn_sig_session_key"].ToString();
secret
= Server.UrlEncode(secret);
string apiKey = Request.QueryString["xn_sig_api_key"];
this.Api = new XiaoNeiApi(apiKey, secret);
}
}

API使用方法如下:

在初始化之后,即默認(rèn)你繼承了XPage

則頁面類中會有一個(gè)Api屬性。

如果你想調(diào)用users.getInfo方法,則Api.Users.getInfo()就可以得到

如果你想調(diào)用friends.areFriends方法則Api.Friends.areFriends("","")進(jìn)行判斷

具體的使用方法可以在演示中看到

其它擴(kuò)展:

數(shù)據(jù)庫訪問:

這里我做了一個(gè)比較方便的方法


Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/


DataBaseExecutor dbe
= new DataBaseExecutor(
new OleDbDataOpen(CONNECTIONSTRING)
);
DataList1.DataSource
= dbe.GetTable("select * from [user] where role=@r and [type]=@t"
,
"@r",1
,
"@t","admin");

DataBaseExecutor 除了可以用GetTable外還有直接執(zhí)行的Execute方法以及返回首行首列的ExecuteScalar方法

DataBaseExecutor使用什么數(shù)據(jù)庫適配器全在于它的構(gòu)造函數(shù),在程序中我也提供了一個(gè)SqlServer的類SqlDataOpen。使用時(shí)只要將上面的OleDbDataOpen替換就行了。

出現(xiàn)錯(cuò)誤的解決方法:

本程序?yàn)樾?nèi)網(wǎng)應(yīng)用程序,請登錄后再使用:通常在本地調(diào)試時(shí)出現(xiàn),只要在Url的QueryString加上你的 xn_sig_session_key與xn_sig_api_key就行了獲取的方法是在你校內(nèi)應(yīng)用上點(diǎn)右鍵,得到你IFrame中的地址,看看它的查 詢字符串(就是?后面的內(nèi)容),復(fù)制過來帖在地址后面即可

其它說明會一點(diǎn)一點(diǎn)補(bǔ)充的

另:

多謝 許哲兄 是他的API的封裝使我產(chǎn)生了做這個(gè)的念頭
命名與基本的初始化都始于許哲兄的API

校內(nèi)群http://group.xiaonei.com/GetTribe.do?id=249310165
開發(fā)者:http://www.cnblogs.com/chsword/

本程序完全開源可以隨意更改,可以不保留作者信息。

分享:ASP.NET中常用的26個(gè)優(yōu)化性能方法
1. 數(shù)據(jù)庫訪問性能優(yōu)化    數(shù)據(jù)庫的連接和關(guān)閉 娛樂訪問數(shù)據(jù)庫資源需要創(chuàng)建連接、打開連接和關(guān)閉連接幾個(gè)操作。這些過程需要多次與數(shù)據(jù)庫交換信息以通過身份驗(yàn)證,比較耗費(fèi)服務(wù)器資源。ASP.

來源:模板無憂//所屬分類:.Net教程/更新時(shí)間:2008-08-22
相關(guān).Net教程