0

Stored Procedureクエリを取得したい

var labratorySerialFinalResult = repository.UoW.Orm.Database.SqlQuery<SPLabratorySerialFinalResult>("EXECUTE LabratorySerialFinalResult @OrderNo='" + project.OrderNumber + "'")

次のような結果を使用します。

 var result = projSerials.Where(x =>!labratorySerialFinalResult.Any(v => v.SerialNo == x.SerialNo)
.Union(labratorySerialFinalResult.Where(c => c.FinalResult == "Reject");

しかし、次の例外が発生します。

Unable to create a constant value of type SPLabratorySerialFinalResult Only primitive types or enumeration types are supported in this context.
4

1 に答える 1

0
var labratorySerialFinalResult = repository.UoW.Orm.Database.SqlQuery<SPLabratorySerialFinalResult>("EXECUTE LabratorySerialFinalResult @OrderNo='" + project.OrderNumber + "'").AsEnumerable();

var result = projSerials.AsEnumerable().Where(x =>!labratorySerialFinalResult.Any(v => v.SerialNo == x.SerialNo)
          .Union(labratorySerialFinalResult.Where(c => c.FinalResult == "Reject");

サポートされていない非スカラー変数の参照

クエリでのエンティティなどの非スカラー変数の参照はサポートされていません。このようなクエリが実行されると、NotSupportedException 例外がスローされ、「EntityType 型の定数値を作成できません。このコンテキストでは、プリミティブ型 ('Int32、String、および Guid' など) のみがサポートされています。」というメッセージが表示されます。

于 2013-10-12T06:24:16.037 に答える