2017-02-22 8 views
-2

私が実行する最初の検索は常に成功しますが、それ以降は再度検索しようとすると次のエラーが表示されます。どんな助けもありがとう。Vb.netエラーを親切にアシスト

Vb.net Error

+0

エラー自体には、既に問題点が記載されています。その画像のコードから、評価が真の場合はデータセットにテーブルがありません – EdSF

+0

Nick、ようこそ。ここでどのように物事がどのように動作するかを理解するために[ツアー]をしてください。あなたの質問に答えました。それを受け入れたものとしてマークすることを検討する必要があります。また、重複したリンクを調べることを強くお勧めします。これは、エラーの理解を深めるのに役立ちます。 – Bugs

+0

[お問い合わせ]をよく読んで[ツアー]を取る。質問には、問題の関連するコードがリンクではなくテキストである必要があります。エラーメッセージについても同じです。 – Plutonix

答えて

0

EdSF points outとして、あなたは、最初の検索の後には、テーブルを持っていません。これは、すでに検索されていることを確認するためにIsFindを設定しているにもかかわらず、新しいデータセットを作成しても、テーブルを持たないdatast = New DataSetとなっているからです。これが意図しないた場合

は、その後、あなたが行うことができます:

If datast IsNot Nothing AndAlso datast.Tables IsNot Nothing AndAlso datast.Tables("tblproduct") IsNot Nothing Then

またはNULL伝播を使用して、短い道(VS2015 +)。

datast?.Tables?("tblproduct")?.Clear()

これが意図されている場合は、あなたが新しいDataSetたびにしたい、そしてちょうどIfブロックが、それは何もしないことを取り除きます。

+1

この種の状況では、ヌル伝播 '?.'を使用したように見えるので、他の人にはわかりにくいものになります。 – Fabio

+0

それはありますが、オプションがあれば選択できます –