![]() |
VOOZH | about |
dotnet add package LinqToTwitter.AspNet --version 6.15.0
NuGet\Install-Package LinqToTwitter.AspNet -Version 6.15.0
<PackageReference Include="LinqToTwitter.AspNet" Version="6.15.0" />
<PackageVersion Include="LinqToTwitter.AspNet" Version="6.15.0" />Directory.Packages.props
<PackageReference Include="LinqToTwitter.AspNet" />Project file
paket add LinqToTwitter.AspNet --version 6.15.0
#r "nuget: LinqToTwitter.AspNet, 6.15.0"
#:package LinqToTwitter.AspNet@6.15.0
#addin nuget:?package=LinqToTwitter.AspNet&version=6.15.0Install as a Cake Addin
#tool nuget:?package=LinqToTwitter.AspNet&version=6.15.0Install as a Cake Tool
LINQ to Twitter is an open source 3rd party LINQ Provider (Twitter Library) for the Twitter micro-blogging service. It uses standard LINQ syntax for queries and includes method calls for changes via the Twitter API.
The following query returns search results where people are tweeting about LINQ to Twitter:
var twitterCtx = new TwitterContext(...);
var searchResponse =
await
(from search in twitterCtx.Search
where search.Type == SearchType.Search &&
search.Query == "\"LINQ to Twitter\""
select search)
.SingleOrDefaultAsync();
if (searchResponse != null && searchResponse.Statuses != null)
searchResponse.Statuses.ForEach(tweet =>
Console.WriteLine(
"User: {0}, Tweet: {1}",
tweet.User.ScreenNameResponse,
tweet.Text));
From a coding experience perspective, the TwitterContext type is analogous to the Entity Framework DBContext. You use the TwitterContext instance, twitterCtx, to access IQueryable<T> tweet categories. In the example above, the Search will give you the ability to search Twitter for tweets meeting some criteria.
Note: The ellipses in the TwitterContext parameters indicates that you need to provide an authorizer with credentials, which is required. You can visit Securing Your Applications for documentation on authorizers and visit the Download page for working examples.
Each query category has a Type property for the type of tweets you want to get back. For example, Status tweets can be made for Home, Mentions, or User timelines. Each query category also has an XxxType enum to help you figure out what is available. The example above uses SearchType.Search to perform searches. Another example would be Status queries which might have StatusType.Home as its Type. In the case of Search queries, Search is the only option, but the Type idiom is consistent accross all query categories.
Just like other LINQ providers, you get an IQueryable<T> back from the query. You can see how to materialize the query by invoking the SingleOrDefaultAsync operator. For Search results, you receive one Search entity that contains information about the Search query and the Search entity contains a Statuses property that is a collection of Status entities. On other queries, you would materialize the query with ToListAsync for multiple results. Just like other LINQ providers, LINQ to Twitter does deferred execution, so operators such as ToListAsync and SingleOrDefaultAsync or statements such as for and foreach loops will cause the query to execute and make the actual call to Twitter.
The latest version of LINQ to Twitter supports async. You can see this where the code above await's the query, using the SingleOrDefaultAsync operator. Commands are async also. e.g. await TweetAsync("Hello from LINQ to Twitter").
For more details on how LINQ to Twitter works, you can visit Making API Calls for API specific examples. The downloadable source code also contains copious examples in the projects. Just look in the Samples folder.
In addition to being able to download from this site, you can also automatically install LINQ to Twitter into your Visual Studio projects via NuGet;
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net6.0 net6.0 is compatible. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 was computed. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
Note: In previous versions of LINQ to Twitter, this was included in the `linqtotwitter` package. In version 6, ASP.NET Core 5 support is a separate package with a dependency on `linqtotwitter` v6.0+.
- Fixed bug were omitting offline.access scope in OAuth2SessionStateCredentialStore throws a NullReferenceException.