0

ここでは初心者レベルのプログラマーであり、Microsoft Visual Studio を使用してデータベース (SQL Server) にクエリを実行し、実際に必要な結果のタプルを返すというこの問題に悩まされています。

たとえば..特定のプロジェクト ID のセクターが必要な場合は、サブルーチンで次のようにクエリを実行し、サブルーチンを呼び出します。

Public Sub testing()
    projectID = 1

    Dim sqlQueryObject = (From a In db.Project1 Where a.ProjectID = projectID
                          Select a.Sector)   'Using LINQ

    'Now have the object (works fine)
    'The Issue is getting the actual sector value from this query...in which I've tried a couple of things

End Sub
  1. dim somestring as string = Cstr(sqlQueryObject)
  2. dim somestring as string = Ctype(sqlqueryobject, string)

projectIDどちらも機能しません。1のセクターに名前が付けられている場合Zero- この値を返すようにプログラムするにはどうすればよいですか?

4

1 に答える 1

0

指定した LINQ クエリは、Where 句の条件を満たす要素を含むリストを返します。クエリが単一の値のみを返すようにするには.Single()、 、.SingleOrDefault().First()または.FirstOrDefault()のいずれかをクエリに適用する必要があります。

たとえば、次の例では、返される型の単一のスカラー値またはデフォルト値のいずれかが返されます。

Dim sector = (From a In db.Project1 
              Where a.ProjectID = projectID
              Select a.Sector
             ).SingleOrDefault() 

これらの方法の詳細については、この質問を参照してください。

于 2013-03-10T01:26:37.550 に答える