VS2010を使用しています。エンティティフレームワークを使用した.NET4.0。最近、このコードをVS2008および.NET3.5から古いEFにアップグレードしました。このコードは古いコードベースで機能します。
有効な場所のセットを返すストアドプロシージャがあり、マーチャントデータと関連付けて、その結果セットを取得し、リストとして送り返します。そこに着くと、次のエラーが発生します。
このメソッドは、LINQ to Entitiesインフラストラクチャをサポートしており、コードから直接使用することを目的としたものではありません。
ウォッチでも結果変数を参照すると、このエラーが発生します。
何か案は?
ここに少しのコードがあります。
public List<Merchant> GetNearest(float miles, float latitude, float longitude)
{
var locations = getNearestLocations(miles, latitude, longitude);
var result = (from ai in locations
join b in _entities.Merchant on
ai.Merchant.MerchantId equals b.MerchantId
select b);
return result.ToList();
}
private IQueryable<Location> getNearestLocations(float miles, float latitude, float longitude)
{
var result = (from ai in _entities.AddressInfoWithinRange(miles, latitude, longitude) // this is the call to the Stored Proc
join a in _entities.Location on
ai.LocationId equals a.LocationId
select a).AsQueryable();
return (IQueryable<Location>)result;
}