2016-04-08 11 views
0

ifステートメントを作成して、削除されたケースのドキュメントをチェックするか、存在するドキュメントがないかどうかを確認するにはどうすればよいですか? 何の文書が存在しない場合、私は、文書の空のリストを返し、リターンがリストでない場合は何も返さないしたいと思い、見つからないか、またはリストが空である空のドキュメントのリストを返します

私のシナリオ:。

私が持っていますメソッドGetDocuments削除されたケースイベントのドキュメントを取得しようとしたとき、またはドキュメントが存在しない場合にオブジェクト参照エラーをスローする可能性があります。
私は

  1. 戻る文書が何の文書が見つからないとき
  2. 戻る文書の空のリストを削除された場合のイベントのために(存在する)文書の空のリストに私の方法を修正したいと思います
  3. 戻り値がリストでない場合
  4. 戻り何もありません。

私が戻されたドキュメントの一覧がある場合は、文書が存在するかどうかをチェックするif文を追加する必要がありますか?私はそれはあなたの質問では何もありませんどのようなはっきりしていないどのようにそれを行うには

Imports System.Xml 
    Imports System.Text 
    Imports System.Collections.Generic 
    Imports System.Text.RegularExpressions 

''' <summary> 
    ''' Retrieve all documents associated to the spcified case event. 
    ''' </summary> 
    ''' <param name="aintCaseEventIntegrationID">The integration id value that identifies the case.</param> 
    ''' <returns>An array of Document objects.</returns> 
    ''' <remarks></remarks> 
    <System.EnterpriseServices.AutoComplete()> _ 
    Shared Function GetDocuments(ByVal aintCaseEventIntegrationID As Integer, Optional ByVal ablnUsePrimaryDatastoreOnly As Boolean = False) As List(Of Document) 
     Dim objDocumentsArray() As Document = Msc.Integration.Mncis.Library.v4.Document.GetForEntity(aintCaseEventIntegrationID, udtDocumentAttachedEntityType.CaseEvent, ablnUsePrimaryDatastoreOnly) 
     Dim objDocumentsList As New List(Of Document) 
     Dim objDocument As Document 
     For Each objDocument In objDocumentsArray 
      objDocumentsList.Add(objDocument) 
     Next 
     Return objDocumentsList 

    End Function 
+0

あなたは多かれ少なかれレビューを求めているので、私はこのトピックをオフトピックとして閉じるよう投票しています。 [**参照**](http://codereview.stackexchange.com/)をご覧ください。また、ちょうど提案、 'Option Strict On'を回す...言及する価値のあるもう一つのこと。ループの前に 'objDocument'を宣言しますが、そのオブジェクトを何にも割り当てないで' list'に追加してください。このリストのこの時点では何も表示されません。なぜそれを最初に宣言すれば、あなたのループ宣言と戦っているかもしれません。あなたのためにそれぞれが 'For Document as objDocumentArray' ... – Codexer

+0

配列をリストに変換する場合は、[AddRange](https://msdn.microsoft.com/en-us)を呼び出すことができます/library/z883w3dc(v=vs.110).aspx)。 objDocumentsArrayが何もないためにエラーが発生した場合は、単にif文を作成してください。 –

+0

私はifステートメントについてどうすればよいか分かりません。これは、リストがあるかどうかを確認するためにif文を作成したり、ドキュメントが存在するかどうかを知るために必要なものです。 –

答えて

0

を確認していません。私はそれがobjDocumentsArrayだと仮定することができます。

Shared Function GetDocuments(ByVal aintCaseEventIntegrationID As Integer, Optional ByVal ablnUsePrimaryDatastoreOnly As Boolean = False) As List(Of Document) 
    Dim objDocumentsArray() As Document = Msc.Integration.Mncis.Library.v4.Document.GetForEntity(aintCaseEventIntegrationID, udtDocumentAttachedEntityType.CaseEvent, ablnUsePrimaryDatastoreOnly) 
    Dim objDocumentsList As New List(Of Document) 

    If objDocumentsArray IsNot Nothing Then 
     objDocumentsList.AddRange(objDocumentsArray) 
    End If 

    Return objDocumentsList 
End Function 

変数にvb.netの型を付加しないでください。 aintCaseEventIntegrationIDの代わりにcaseEventIntegrationIDだけを持ちます。

+0

これは誰かによって書かれた、私はそれを変更しようとしています。 objDocumentArray()に何も入っていないときは何も意味しません –

関連する問題