0

クエリを構築するために動的言語クエリを使用しているimとDateTimeに問題があるim

  • queryResults-前のクエリの結果のリストが含まれます。

  • sr.FromDate-DateTimeパラメーター

私がやろうとしているのは、sr.FromDateパラメーター以上のすべての結果を取得することです。

var z = queryResults
            .Where("Min(Datetime) >= @0", sr.FromDate)
            .ToDictionary(g => g.FirstOrDefault().ServiceInstanceId, g => g.ToList());

例外:

ParseError  ,    '.' or '(' expected

編集:

明確にするために、動的linq SRオブジェクトを使用している場合、パラメーターの値がnullでない場合は、文字列intおよびdateパラメーターが含まれます。クエリを作成します。

編集2

私は自分のprivusの問題を理解しましたが、今は別の問題があります。クエリを作成するためにこれを使用しています。

  private static string GetQueryTemplet(string criteria)
    {

        switch (criteria)
        {

            case "FromDate":
                return " Min(Track.Datetime) >= {0} ";
            case "ToDate":
                return " Max(Track.Datetime) <=  {0} ";

             default:
                return "";
        }

データをに渡すよりも

 var z = queryResolts
             .Where(query)
            .ToDictionary(g => g.Key, g => g.Select(h => h.Track));

何らかの理由でこの例外が発生します

Operator '>=' incompatible with operand types 'DateTime' and 'Int32'

私はそれを多くの方法で解析しようとしましたが、何も機能しません...

ありがとうミキ

4

1 に答える 1

1

結果にDateTime列があると仮定します

var z = queryResults
            .Where(result => result.DateTime >= sr.FromDate)
            .ToDictionary(g => g.FirstOrDefault().ServiceInstanceId, g => g.ToList());
于 2012-10-24T09:27:51.750 に答える