2012-01-10 9 views
1

私はそれに私のクエリを持つメソッドを持っています。私のクエリはLINQクエリですが、メソッドでDataSetを返すようにします。可能であれば、あなたはそれをどのように設定するのでしょうか?メソッドからデータセットを返します

private DataSet ListAllData(string distributorId) 
{ 
    var theQuery = (from r in gServiceContext.CreateQuery("opportunity") 
    join c in gServiceContext.CreateQuery("contact") on ((EntityReference)r["new_contact"]).Id equals c["contactid"] into opp 
    from o in opp.DefaultIfEmpty() 
    where ((EntityReference)r["new_channelpartner"]).Id.Equals(distributorId) && ((OptionSetValue)r["new_leadstatus"]).Equals("100000002") 
    select new 
    { 
     OpportunityId = !r.Contains("opportunityid") ? string.Empty : r["opportunityid"], 
     CustomerId = !r.Contains("customerid") ? string.Empty : ((EntityReference)r["customerid"]).Name, 
     Priority = !r.Contains("opportunityratingcode") ? string.Empty : r.FormattedValues["opportunityratingcode"], 
     ContactName = !r.Contains("new_contact") ? string.Empty : ((EntityReference)r["new_contact"]).Name, 
     Source = !r.Contains("new_sourcepick") ? string.Empty : r.FormattedValues["new_sourcepick"], 

    }); 
} 

ありがとう!

+4

あなたは、LINQを使用する可能性を持っている、あなたは強く型付けされたオブジェクトを構築している、あなたは離れてすべてのあなたの努力を投げると弱い型指定されたDataSetを返すようにしたいですか? –

答えて

3

これは助けになることがあります。Creating a DataTable From a Query

+0

ありがとう、私はその記事がほとんど私にそこにいると思う。 "System.Collections.Generic.IEnumerable "に暗黙的に 'System.Linq.IQueryable '型を変換することはできません。明示的な変換あなたはキャストがありませんか? " –

+0

あなたのコードを見ることなく、言うことは難しいです。しかし、リンクされた記事では、セクション 'カスタムCopyToDataTableの作成メソッド'を特に見てください。ここにリンクしています:http://msdn.microsoft.com/en-us/library/bb669096.aspxこれはあなたを助けるかもしれない実装を持っています。 – TheNextman

関連する問題