C# 为什么我的代码没有给我一个错误?
我目前正在探索我的第一个第三方库,一切都很好,除了它应该抛出一个错误时,我的东西是错误的,它没有 这是我的代码,我尝试过引起一个错误,它应该引起一个错误,但它不是,应用程序仍然运行 例如,当我从使用者密钥中删除一个字母或数字时,它无法连接,应该会抛出一个错误 我在看文件,我试着按照这个做C# 为什么我的代码没有给我一个错误?,c#,.net,linq,twitter,tweetinvi,C#,.net,Linq,Twitter,Tweetinvi,我目前正在探索我的第一个第三方库,一切都很好,除了它应该抛出一个错误时,我的东西是错误的,它没有 这是我的代码,我尝试过引起一个错误,它应该引起一个错误,但它不是,应用程序仍然运行 例如,当我从使用者密钥中删除一个字母或数字时,它无法连接,应该会抛出一个错误 我在看文件,我试着按照这个做 它不会抛出异常,因为没有要抛出的异常 当您从twitter发布推文时,它应该返回一个您可以检查的对象。如果publishTweet()方法失败,它可能不会抛出异常,而是返回一个响应对象 检查该对象并进行相应的
它不会抛出异常,因为没有要抛出的异常 当您从twitter发布推文时,它应该返回一个您可以检查的对象。如果publishTweet()方法失败,它可能不会抛出异常,而是返回一个响应对象
检查该对象并进行相应的处理。它不会引发异常,因为没有要引发的异常 当您从twitter发布推文时,它应该返回一个您可以检查的对象。如果publishTweet()方法失败,它可能不会抛出异常,而是返回一个响应对象
检查该对象并进行相应处理。我是Tweetinvi的开发者,为了清楚起见,这里介绍了Tweetinvi的工作原理
- 推特抛出的
默认由WebException
处理。这样一个特性的想法是,大多数开发人员不关心它失败的原因,而只关心它是否失败。在这种情况下,您需要使用异常记录器ExceptionHandler
。当异常失败时,Tweetinvi将根据Twitter端点返回null对象或falseExceptionHandler
- 您可以使用以下代码行禁用
:代码>。执行此操作时,您必须在Tweetinvi类ExceptionHandler
上使用Tweetinvi.Core.Exceptions.TwitterException
。您可能还希望处理以下异常:try/catch
:异常已按照TwitterTimeoutException
的指定超时TweetinviConfig.ApplicationSettings.HttpRequestTimeout
和TwitterNullCredentialsException
由TwitterInvalidCredentialsException
设置Auth.SetUserCredentials()
- 如果指定的某个参数不正确,则始终会引发
和ArgumentException
。在下一个版本0.9.13.0中,我们将改进此类异常的详细信息ArgumentNullException
我是Tweetinvi的开发者,为了清楚起见,这里是Tweetinvi的工作原理
- 推特抛出的
默认由WebException
处理。这样一个特性的想法是,大多数开发人员不关心它失败的原因,而只关心它是否失败。在这种情况下,您需要使用异常记录器ExceptionHandler
。当异常失败时,Tweetinvi将根据Twitter端点返回null对象或falseExceptionHandler
- 您可以使用以下代码行禁用
:代码>。执行此操作时,您必须在Tweetinvi类ExceptionHandler
上使用Tweetinvi.Core.Exceptions.TwitterException
。您可能还希望处理以下异常:try/catch
:异常已按照TwitterTimeoutException
的指定超时TweetinviConfig.ApplicationSettings.HttpRequestTimeout
和TwitterNullCredentialsException
由TwitterInvalidCredentialsException
设置Auth.SetUserCredentials()
- 如果指定的某个参数不正确,则始终会引发
和ArgumentException
。在下一个版本0.9.13.0中,我们将改进此类异常的详细信息ArgumentNullException
试试这段代码,看看您的用户是否经过身份验证。如果不是,则必须是权限,否则您的密钥错误:
ITwitterCredentials creds = new TwitterCredentials(CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET);
Auth.SetCredentials(creds);
var authenticatedUser = User.GetAuthenticatedUser(creds);
请尝试此代码,并查看您的用户是否已通过身份验证。如果不是,则必须是权限,否则您的密钥错误:
ITwitterCredentials creds = new TwitterCredentials(CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET);
Auth.SetCredentials(creds);
var authenticatedUser = User.GetAuthenticatedUser(creds);
应该出什么问题?您正在
Release
模式或Debug
模式下运行程序?使用第三方库时,您必须阅读以确认您的期望与现实相符。默认情况下,TweetInvi接受异常。这应该通过包含异常的Tweet.PublishTweet()
返回null
和ExceptionHandler.GetLastException()
来表示。应该出什么问题了?使用第三方库时,您正在发布
模式或调试
模式下运行程序,你必须阅读这篇文章,用现实来证实你的期望。默认情况下,TweetInvi接受异常。这应该通过包含异常的Tweet.PublishTweet()
返回null
和ExceptionHandler.GetLastException()
来表示。