私はこのようなことをしたい:
var apps = from app in context.Apps
where (platform == AppPlatform.All ||
(app.Platform == sPlatform && new Version(app.PlatformVersion) <= version))&&
(availability == AppAvailability.All || app.Availability == sAvailability)
select app;
return apps.ToList();
行new Version(app.PlatformVersion) <= version))
がエラーを引き起こしています:Only parameterless constructors and initializers are supported in LINQ to Entities.
基本的に必要なのは、エンティティモデルでapp.PlatformVersionを文字列ではなく新しいVersion()オブジェクトとして解析することですが、linq-to-entity内からこれを実行できないようです。エンティティモデルレベルでこれを行うことはできますか?他にもタイプに解析したいフィールド(文字列)があります(文字列を列挙型に解析するなど)。どうすればこれを達成できますか?