3

これが私の失敗したコードです

        var query = from gg in Client.wcf.context.Good
                    from cc in Client.wcf.context.Customer
                    from ch in Client.wcf.context.CashHeading
                    from cs in Client.wcf.context.Cash
                    where ch.Id_customer == cc.Id
                    where cs.Id_cashheading == ch.Id
                    where gg.Id == cs.Id_good
                    select new CustomerOrderResult {
                        CustomerID = cc.Id,
                        Price = gg.Price.HasValue ? gg.Price.Value : 0,
                        Date = ch.Date.HasValue ? ch.Date.Value : DateTime.Now
                    };
        List<CustomerOrderResult> qqq = query.ToList();

追加情報:メソッド'Select'はサポートされていません。

これでエラーが解決します:このLinqが機能しない理由(Linq式をURIに変換する際のエラー:クエリオプション(orderby、where、take、skip)のみを指定できます)

クエリは別のlinqであり、全体として、サーバー(エンティティ)アプリケーションへのWCFデータクライアントの完全なソースファイルは、GitHubにあります。

そこにある他の統合言語クエリは正常に機能します

エラー:+ query {Error translating Linq expression to URI: The method 'Select' is not supported.} System.Linq.IQueryable<CustomerOrderResult> {System.Data.Services.Client.DataServiceQuery<CustomerOrderResult>.DataServiceOrderedQuery}

4

1 に答える 1

1

おそらくquery含まれていますnull。試す

where x != null && x.CustomerID == c.Id 
于 2012-07-20T06:54:29.017 に答える