https://www.codeproject.com/Articles/23823/Create-a-SQL-Database-Programmatically
http://puresourcecode.com/dotnet/post/2014/06/11/Blogger-C-API
Làm thế nào để lập trình ẩn bàn phím | Làm thế nào để thêm một bài mới Blogger với các nhãn từ C #
sử dụng hệ thống; sử dụng System.Text; sử dụng Google.GData.Client; sử dụng System.Net; sử dụng System.Xml; sử dụng System.Text.RegularExpressions; namespace BloggerDevSample { lớp ConsoleSample { / ** Lists blog của người dùng. * / Tĩnh khoảng trống ListUserBlogs (dịch vụ Service) { Console.WriteLine ( "\ nRetrieving một danh sách các blog" ); FeedQuery query = mới FeedQuery (); // Lấy ra một danh sách các blog query.Uri = mới Uri ("http://www.blogger.com/feeds/default/blogs" ); Thức ăn AtomFeed = rỗng ; thức ăn = service.Query (query); foreach (entry AtomEntry trong feed.Entries) { Console.WriteLine ( "Blog title:" + entry.Title.Text); } } / ** Lists blog của người dùng và trả về URI cho đăng mục mới * vào blog mà người dùng lựa chọn. * / Tĩnh Uri SelectUserBlog (dịch vụ Service) { Console.WriteLine ( "\ nXin chọn một blog trên đó để viết." ); FeedQuery query = mới FeedQuery (); // Lấy ra một danh sách các blog query.Uri = mới Uri ( "http://www.blogger.com/feeds/default/blogs" ); Thức ăn AtomFeed = service.Query (query); // Xuất bản một bài đăng blog Uri blogPostUri = rỗng ; nếu (! feed = rỗng ) { foreach (AtomEntry entry trong feed.Entries) { // In ra tiêu đề của Blog Console.WriteLine ( "Blog và tên:" + entry.Title.Text); Console.Write ( "Đăng lên blog này (y / n):" ); nếu (. Console.ReadLine () Equals ( "y" )) { // tìm ra href trong liên kết với một rel trỏ đến thức ăn của blog cho ( int i = 0; i <entry.Links.Count; i ++) { nếu (entry.Links [i] .Rel.Equals ( "http://schemas.google.com/g/2005#post" )) { blogPostUri = mới Uri (entry.Links [i] .HRef.ToString () ); Console.WriteLine ( "bài viết mới của bạn sẽ được gửi đến"+ BlogPostUri.AbsoluteUri.ToString ()); } } Trở blogPostUri; } } } Trở blogPostUri; } / ** Tạo một blog entry mới và gửi nó đến các Uri * / định tĩnh AtomEntry PostNewEntry (dịch vụ Dịch vụ, Uri blogPostUri) { Console.WriteLine ( "\ nPublishing một bài đăng blog" ); AtomEntry createdEntry = rỗng ; nếu (blogPostUri! = rỗng ) { // xây dựng các mục mới AtomEntry newPost = mới AtomEntry (); newPost.Title.Text = "Hôn nhân!" ; newPost.Content = mới AtomContent (); newPost.Content.Content = "<div xmlns = 'http: //www.w3.org/1999/xhtml'>" + .! "<p> Ông Darcy có <em> cầu hôn </ em> với tôi < / p>" + "<p> Ông là người đàn ông cuối cùng trên trái đất tôi sẽ bao giờ mong muốn lập gia đình. </ p>" + "<p> Dù tôi sẽ làm gì? </ p>" + "</ div>" ; newPost.Content.Type = "xhtml" ; newPost.Authors [0] .name = "Elizabeth Bennet" ; newPost.Authors [0] .Email = "liz@gmail.com" ; createdEntry = service.Insert (blogPostUri, newPost); nếu (createdEntry =! rỗng ) { Console.WriteLine ( "New bài đăng blog được tạo ra với tiêu đề:" + createdEntry.Title.Text); } } Trở createdEntry; } / ** Tạo một blog entry mới và gửi nó đến các Uri * / định tĩnh khoảng trống PostAndDeleteNewDraftEntry (dịch vụ Dịch vụ, Uri blogPostUri) { Console.WriteLine ( "\ nCreating dự thảo bài đăng blog" ); AtomEntry draftEntry = rỗng ; nếu (! blogPostUri = rỗng ) { // xây dựng các mục mới AtomEntry newPost = mới AtomEntry (); newPost.Title.Text = "Hôn nhân (Dự thảo)!" ; newPost.Content = mới AtomContent (); newPost.Content.Content = "<div xmlns = 'http: //www.w3.org/1999/xhtml'>" + .! "<p> Ông Darcy có <em> cầu hôn </ em> với tôi < / p>" "<p> Ông là người đàn ông cuối cùng trên trái đất tôi sẽ bao giờ mong muốn lập gia đình </ p>." + "<p> Dù tôi sẽ làm </ p>?" + "</ div>" ; newPost.Content.Type = "xhtml" ; newPost.Authors.Add ( mới AtomPerson ()); newPost.Authors [0] .name = "Elizabeth Bennet" ; newPost.Authors [0] .Email = "liz@gmail.com" ; newPost.IsDraft = đúng ; draftEntry = service.Insert (blogPostUri, newPost); nếu (draftEntry! Console.WriteLine ( "New thảo bài tạo ra với tiêu đề:" + draftEntry.Title.Text); // Xóa mới được tạo ra dự thảo entry Console.WriteLine ( "Nhấn Enter để xóa bản nháp bài đăng blog" ); Console.ReadLine (); draftEntry.Delete (); } } } / ** Hiển thị tiêu đề cho tất cả các mục trong blog đã chọn trước đó. * / Tĩnh khoảng trống ListBlogEntries (dịch vụ Dịch vụ, Uri blogUri) { nếu (blogUri! = Rỗng ) { Console.WriteLine ("\ nRetrieving tất cả các bài đăng trên blog" ); // Lấy tất cả các bài viết trong một blog truy vấn FeedQuery = mới FeedQuery (); Console.WriteLine ( "Truy vấn URI:" + blogUri.ToString ()); query.Uri = blogUri; Thức ăn AtomFeed = service.Query (query); foreach (entry AtomEntry trong feed.Entries) { Console.WriteLine ( "Entry Title:" + entry.Title.Text); } } } / ** tiêu đề hiển thị cho các mục trong blog trong phạm vi ngày cứng mã hoá. * / Tĩnh khoảng trốngListBlogEntriesInDateRange (dịch vụ Dịch vụ, Uri blogUri) { Console.WriteLine ( "\ nRetrieving bài viết sử dụng tham số truy vấn" ); // Lấy tất cả các bài viết trong một blog giữa ngày 1 tháng 1 năm 2006 và 12 tháng tư 2007 FeedQuery query = mới FeedQuery (); query.Uri = blogUri; query.MinPublication = mới DateTime (2006, 1, 1); query.MaxPublication = mới DateTime (2007, 4, 12); Thức ăn AtomFeed = service.Query (query); foreach (entry AtomEntry trong feed.Entries) { Console.WriteLine ("Entry Title:" + entry.Title.Text); } } / ** Thay đổi các nội dung của blog entry mới được tạo ra. * / Tĩnh AtomEntry EditEntry (AtomEntry Edit) { Console.WriteLine ( "\ nUpdating bài" ); // Chỉnh sửa mục mới nếu (Edit! = Rỗng ) { toEdit.Title.Text = "Hôn nhân tai ương!" ; Console.WriteLine ( "Nhấn Enter để cập nhật" ); Console.ReadLine (); Edit = toEdit.Update (); } Trở Edit; } / ** Xóa blog entry quy định. * / Tĩnh khoảng trống DeleteEntry (AtomEntry toDelete) { Console.WriteLine ( "\ nDeleting bài" ); // Xóa mục nhập thay đổi nội dung nếu (toDelete =! Rỗng ) { Console.WriteLine ( "Nhấn Enter để xóa các bài đăng blog mới" ); Console.ReadLine (); toDelete.Delete (); } } / ** Lấy ý kiến nuôi URI cho blog entry mong muốn. * / Tĩnh Uri SelectBlogEntry (dịch vụ Dịch vụ, Uri blogPostUri) { Console.WriteLine ( "\ nXin chọn một mục blog trên để bình luận." ); FeedQuery query = mới FeedQuery (); query.Uri = blogPostUri; Thức ăn AtomFeed = service.Query (query); Uri commentPostUri = rỗng ; nếu (! feed = rỗng ) { foreach (AtomEntry entry trong feed.Entries) { // In ra tiêu đề của Blog Console.WriteLine ( "Blog tiêu đề entry:" + entry.Title.Text); Console.Write ("Đăng một bình luận về cụm từ này (y / n):" ); nếu (Console.ReadLine (). Equals ( "y" )) { // Tạo URL bài viết để thêm một bình luận bằng cách tìm số id của cụm từ này. // Tìm href trong liên kết với một rel trỏ đến thức ăn của blog. cho ( int i = 0; i <entry.Links.Count; i ++) { nếu (entry.Links [i] .Rel == "chỉnh sửa" ) { chuỗi commentUriStart = Regex.Replace (blogPostUri.ToString (), "/ posts / default" , "" ); chuỗi selfLink = nhập cảnh. chuỗi entryId = Regex.Replace (selfLink, blogPostUri.ToString () + "/" , "" ); // Xây dựng URI bình luận từ id blog trong và id nhập cảnh. commentPostUri = mới Uri (commentUriStart + "/" + entryId + "/ ý kiến / default" ); Console.WriteLine ( "ý kiến mới của bạn sẽ được gửi đến" + commentPostUri.ToString ()); trở commentPostUri; } Tĩnh AtomEntry PostNewComment (dịch vụ Dịch vụ, Uri commentPostUri) { Console.WriteLine ( "\ nCommenting trên một bài đăng blog" ); AtomEntry postedComment = rỗng ; nếu (commentPostUri! = rỗng ) { // Thêm một lời nhận xét. Bình luận AtomEntry; bình luận = mới AtomEntry (); comment.Title.Text = "Đây là nhận xét đầu tiên của tôi" ; comment.Content.Content = "Đây là nhận xét đầu tiên của tôi" ; comment.Authors.Add ( mớiAtomPerson ()); comment.Authors [0] .name = "Blog Author Name" ; postedComment = service.Insert (commentPostUri, bình luận); Console.WriteLine ( "title Kết quả như sau:" + postedComment.Title.Text); } Trở postedComment; } Tĩnh khoảng trống ListEntryComments (dịch vụ Dịch vụ, Uri commentUri) { nếu (commentUri =! Rỗng ) { Console.WriteLine ( "\ nRetrieving tất cả các bài đăng blog comments" ); // Lấy tất cả các ý kiến trên một blog entry FeedQuery query = mới FeedQuery (); Console.WriteLine ( "Truy vấn URI:" + commentUri.ToString ()); query.Uri = commentUri; Thức ăn AtomFeed = service.Query (query); foreach (entry AtomEntry trong feed.Entries) { Console.WriteLine ( "Comment Title:" + entry.Title.Text); } } } Tĩnh khoảng trống DeleteComment (AtomEntry commentEntry) { Console.WriteLine ( "\ nDeleting bình luận" ); nếu như(commentEntry! = rỗng ) { // Xóa nhận xét. Console.WriteLine ( "Nhấn Enter để xóa các bài bình luận mới" ); Console.ReadLine (); commentEntry.Delete (); } } Tĩnh khoảng trống Main ( string [] args) { Dịch vụ dịch vụ = mới dịch vụ ( "blogger" , "blogger-dụ" ); // ClientLogin sử dụng tên đăng nhập / mật khẩu xác thực chuỗi tên người dùng; chuỗi mật khẩu; nếu như(! args.Length = 2) { Console.WriteLine ( "Cách sử dụng: BloggerDevSample.exe <username> <password>" ); trở lại ; } Khác { username = args [0]; password = args [1]; } Service.Credentials = mới GDataCredentials (username, mật khẩu); ListUserBlogs (dịch vụ); Uri blogPostUri = SelectUserBlog (dịch vụ); AtomEntry createdEntry = PostNewEntry (dịch vụ, blogPostUri); PostAndDeleteNewDraftEntry (dịch vụ, blogPostUri); ListBlogEntries (dịch vụ, blogPostUri); ListBlogEntriesInDateRange (dịch vụ, blogPostUri); AtomEntry editedEntry = EditEntry (createdEntry); DeleteEntry (editedEntry); Uri commentPostUri = SelectBlogEntry (dịch vụ, blogPostUri); AtomEntry commentEntry = PostNewComment (dịch vụ, commentPostUri); ListEntryComments (dịch vụ, commentPostUri); DeleteComment (commentEntry); Console.WriteLine ( "Nhấn Enter để bỏ thuốc lá" ); Console.ReadLine (); } } }
http://puresourcecode.com/dotnet/post/2014/06/11/How-to-add-a-new-Blogger-post-with-labels-from-C

Một số lưu ý khi bình luận
Mọi bình luận sai nội quy sẽ bị xóa mà không cần báo trước (xem nội quy)
Bấm Thông báo cho tôi bên dưới khung bình luận để nhận thông báo khi admin trả lời
Để bình luận một đoạn code, hãy mã hóa code trước nhé