谷歌發(fā)布.NET平臺YouTube SDK
谷歌發(fā)布的這個.NET SDK,意味著對微軟開發(fā)平臺的支持與承認(rèn)。將更方便.NET程序員在YouTube的程序開發(fā)工作。
近日Google發(fā)布了.NET版的YouTube SDK(MSI),以此滿足那些希望從.NET或ASP.NET應(yīng)用中以編程的方式訪問YouTube的開發(fā)者的需要。
該SDK包含了一個YouTube API的CHM幫助文件,一個Visual Studio 2008模板和幾個用于說明API用法的應(yīng)用示例:可以將視頻文件上傳到Y(jié)ouTube上的工具、使用了AuthSub的ASP.NET迷你站點(diǎn)、由YouTube支持的授權(quán)服務(wù)以及當(dāng)用戶在YouTube上有新動作時會自動發(fā)出通知的應(yīng)用。
YouTube API構(gòu)建在Google的GData協(xié)議之上(MSI),并通過Google.GData.YouTube命名空間中特定的數(shù)據(jù)類對其進(jìn)行了擴(kuò)展。GData是個面向Web通訊的開源協(xié)議,為Google的眾多服務(wù)所廣為使用,如Blogger、Calendar、Picasa以及YouTube等等。
下面的代碼示例取自SDK的幫助文檔,展示了如何通過LINQ的鏈?zhǔn)絯here從句來訪問YouTube:
- YouTubeRequestSettings settings = new YouTubeRequestSettings("NETUnittests", YTCLIENTID, YTDEVKEY);
- YouTubeRequest f = new YouTubeRequest(settings);
- settings.AutoPaging = true;
- settings.Maximum = 200; //only 75 come back but that is a feature
- Feed<Video> sfeed = f.GetStandardFeed(YouTubeQuery.MostPopular);
- //put the entire list into a list.
- var entries = sfeed.Entries.ToList();
- var oneHunderTitles = from e in entries
- where e.ViewCount > 100
- where e.Rating > 2
- where e.Updated < new DateTime(2008, 12, 4)
- orderby e.Rating descending
- orderby e.Title
- select e;
- foreach (var item in oneHunderTitles) {
- Console.WriteLine(item.Title);
- }
- //here is an inline orderby on title as a lambda
- foreach (var item in entries.OrderBy(i => i.Title)) {
- Console.WriteLine(item.Title);
- }
- Console.WriteLine(sfeed.Entries.Count());
【編輯推薦】