簡體   English   中英

VB.net中的LinqToTwitter錯誤BC30652和BC36593

[英]LinqToTwitter in VB.net errors BC30652 and BC36593

我正在嘗試使用vb .net中的LinqToTwitter包來捕獲推文,並使用流式傳輸選項實時捕獲它們。

我遇到了兩個錯誤,我嘗試以幾種方式進行糾正,進行了多次導入,但沒有成功。

錯誤是:

第12、14、21和23行-程序集'System.Runtime,版本= 4.0.0.0,區域性=中性,PublicKeyToken = b03f5f7f11d50a3a'(包含類型[Object])的引用。 將一個添加到您的項目。

第23行-類型為'TwitterQueryable(Of Streaming)'的表達式不可查詢。 確保您沒有丟失LINQ提供程序的程序集引用和/或名稱空間導入。

謝謝!

Imports System
Imports System.Data
Imports System.IO
Imports System.Linq
Imports System.Xml.Linq
Imports System.Data.Linq
Imports LinqToTwitter
Public Class compTwitter
 Public Async Sub Stream_Twitter()
        Dim arquivo As StreamWriter
        arquivo = My.Computer.FileSystem.OpenTextFileWriter("C:\TesteTwitterDanilo\test25.txt", True)
        Dim twAuth = New SingleUserAuthorizer() With {.CredentialStore = New SingleUserInMemoryCredentialStore()}

        With twAuth.CredentialStore
            .ConsumerKey = glbTwitterConsumerKey
            .ConsumerSecret = glbTwitterConsumerSecret
            .OAuthToken = glbTwitterAccessToken
            .OAuthTokenSecret = glbTwitterAccessTokenSecret
        End With

        Dim twitterCtx As TwitterContext = New TwitterContext(twAuth)

        Dim Response As List(Of Streaming) = Await (From stm In twitterCtx.Streaming()
                                                    Where stm.Language = "pt" AndAlso stm.Type = StreamingType.Filter AndAlso stm.Track = "Twitter"
                                                    Select stm).StartAsync(Function(stm) Escreve_no_Arquivo(arquivo, stm))
        arquivo.Close()
    End Sub
End Class

根據您的評論,原因是您試圖在Web應用程序中運行它。 Web應用程序是無狀態的。 這意味着當用戶發出請求時,Web應用程序將實例化該頁面,處理該請求,然后允許對該頁面(和其他對象)實例進行垃圾回收。 根據您的情況,用戶請求頁面,它實例化LINQ到Twitter對象(包括流),然后返回。 這些LINQ to Twitter實例有資格進行垃圾回收,並且發生了奇怪的事情。

流代碼需要在維護狀態的應用程序(例如控制台應用程序)中運行。 如果您需要它連續運行,則可以考慮一直保持運行狀態的Windows服務或雲服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM