2009-07-02 9 views
1

私は次の週に始まる私のcoo-opのためにいくつかのVB.NETを学びたいと思っています。そのために私はC#上にあり、 VB.NETに変換して構文に慣れさせてください。Linq to SqlがVB.NETのジェネリックリストに変換

私の問題は簡単だと確信していますが、解決には苦労します。 私はlinqクエリでデータを取得し、リピータにバインドするためのリストとして返します。

Public Function getProjects() As List(Of portfolio_website) 
     Using myPortfolio As New PortfolioDataContext 
      Try 

       Dim myProjects = (From p In myPortfolio.portfolio_websites _ 
            Order By p.website_id Descending _ 
            Select New With {.name = p.website_name, .id = p.website_id}).Take(5) 

       Return myProjects 

      Catch ex As Exception 
       Return Nothing 
      End Try 
     End Using 
    End Function 

は、しかし、私はエラーを取得しています:

は、私には、以下の機能を持っています。

私はC#でそれを行うだろう場合は、MyProjectsではVARなり、お返しに私は

return myProjects.ToList(); 

を持ち、それが正常に動作します。しかし、私はVB.NETでToList()を使用しようとすると、それは一般的なリストにSQLからリストにそれを変換することはできませんエラーを取得しています。

VB.NETでこの変換を行うにはどうすればよいですか?または別の方法がありますか?

しかし、VB.NETの構文ではC言語でいくらか失われています。

答えて

1

私はそれが嫌いです。 私は私の質問をした後、二番目は私の誤解を実感した。 これは、C#の場合と同じであるが、私は

Select New With {.name = p.website_name, .id = p.website_id 

を取るならば、私は、カスタムオブジェクトを持っている必要がありますか、私はすべてを取る必要があります。 だから私は

Dim myProjects = (From p In myPortfolio.portfolio_websites _ 
           Order By p.website_id Descending _ 
           Select p).Take(5) 

Return myProjects.ToList() 

と今ではすべてが動作しているために、SQLに私のLINQを変更しました。