LinqToSQLまたはEntityFramework v4のVS2010リリースでSQL 2008空間データ型に対するクエリがサポートされるかどうかは誰にも分かります(理想的には参照付き)。Linq2SqlまたはEF4での空間データ型のサポート
答えて
EF 4.0では、custom functionsの組み合わせを使用して何かをハックすることができ、空間タイプが実際にバイナリタイプであると思われる場合があります。これは、私が周りを試して試してみて、my tips seriesに追加することを考えているものです。しかし、まだハックさえ証明されていません。 :(
そして直接支援のためとして、残念ながらL2SやEFどちらV4はVS2010の時間枠内での空間タイプをサポートします。
Entity Frameworkのプログラムマネージャ。
はここで取得するための回避策ですEntity Framework/LINQ to Entities:
データベースビューを使用して、Well-Known-Text(クエリの "geometry.ToString()"を使用)またはバイナリを返すことができます。行が返されます。文字列/バイナリを.NETのSqlGeometryオブジェクトに変換します。ここで
は、よく知られたテキスト文字列にジオメトリタイプの「場所」フィールドに変換ビューを構築するために使用されるサンプルクエリです:
SELECT ID, Name, Location.ToString() as Location FROM MyTable
はここで持ったエンティティをクエリの例ですよく知られているテキストまたは「地理」オブジェクトの文字列表現が含まれている「場所」フィールド:
var e = new MyApp.Data.MyDataEntities(connectionString);
var items = from i in e.MyTables
select i;
foreach (var i in items)
{
// "Location" is the geography field
var l = SqlGeography.Parse(i.Location);
var lat = l.Lat;
var lng = l.Long;
}
1つの追加の事は、あなたがするので、ストアドプロシージャ内の任意の空間ベースのクエリを実行する必要がありますですテーブルのすべてのデータを.NETを使用して、LINQを使用して独自の空間クエリを実行します。
これはネイティブにSQL空間型をサポートするものではありませんが、Entity FrameworkとSQL Spatialを同時に使用することができます。
優秀、ありがとう、クリス。私はこれを見てみましょう! –
これは私がL2Sを使って演奏/演奏してきたことです。 –
ありがとうありがとうございます:) –
また、手書きのテーブルと列でLinq-to-SQLを実行し、SQL空間タイプを直接取得することもできます。私は
string connectionString = @"Data Source=YADDAYADDA;Initial Catalog=MUMBLEMUMBLE;Integrated Security=True";
var pointsFileDc = new PointsFileDC(connectionString);
var geos = (from point in pointsFileDc.pointsData
select point).Take(10);
foreach (var geo in geos)
{
ObjectDumper.Write(geo);
}
...
public class PointsFileDC : DataContext
{
public Table<GeoPoints> pointsData;
public PointsFileDC(string connection)
: base(connection)
{
}
}
[Table(Name = "Points")]
public class GeoPoints
{
[Column(IsPrimaryKey = true)]
public int PointId;
[Column]
public SqlGeography GeoPoint;
}
- 1. 空間データ型
- 2. Linq2SQLのSpring.Netサポート
- 3. EF4.1でDbGeography空間データ型を使用するには
- 4. 空間データのクエリは、2008
- 5. JPAでの地理空間サポート
- 6. Mysql Textのデータ型は任意のメモリ空間を予約しますか
- 7. PostgreSQLの空間データ
- 8. エンティティフレームワークEF4複合型
- 9. EF4 CTP5多型クエリ
- 10. 型または名前空間名「IClientValidatable」は
- 11. 型または名前空間名「HtmlEditorExtenderは」「AjaxControlToolkit」
- 12. Umbraco:空間データ
- 13. 名前空間に型または名前空間の名前が存在しません
- 14. 空間データの計算または保存
- 15. CS0234 \t型または名前空間名「Owin」の名前空間に存在しない「Microsoftの
- 16. SQL空間型のWKT変換でのマシン間での矛盾
- 17. 型または名前空間名「name」が
- 18. Linq2SQL継承型とOfTypeクエリ
- 19. ます。java.sql.SQLException:ORA-03115:サポートされていないネットワークのデータ型または表現
- 20. SSRS空間データの色
- 21. R(空間データ)のポリゴンマップ
- 22. SharedObjectはどのデータ型をサポートしていますか?
- 23. CakePHPでの空間データの扱い
- 24. gormで時間を使うためのデータ型は?
- 25. LINQ2SQLまたはEntity Frameworkまたはエンタープライズライブラリ?
- 26. ユーザーコントロールの型または名前空間が見つかりません
- 27. 型または名前空間の名前 'Linq'が存在しません
- 28. 型または名前空間の名前 'IQueryable'が見つかりません
- 29. 型または名前空間名「PersistentBagは」名前空間に存在しない「NHibernate.Collection」
- 30. マップレイヤーウィザードを使用して「指定されたデータセットフィールドの空間データ型を判別できません...」
おかげでアレックス...「の参照を含めることを忘れと 'いけない(サンプルDBに以下のSystem.SqlServer.Types
に' を使用してテストしました確かに、信頼性の高い決定的な答えのように思えます。EF4がそれらをサポートしないという特別な理由はありますか(あまりにも難しく、需要が足りない、優先度が低すぎます...) –
さて、あまりにも低い優先順位を言いません。私はそれを最優先と考えていますが、POCO、F KS、モデルファーストなど –
EFはいつ空間型サポートを取得しますか? VS'2012;彼らはSQL Serverに追加された後わずか4年?? –