Vâng, câu hỏi là đủ rõ ràng. Có thể tạo các chỉ mục không gian không gian bằng API thông thạo của Entity Framework 6.1 không?Cách tạo chỉ mục không gian bằng cách sử dụng API EF 6.1 thông thạo
Trả lời
Trả lời ngắn- Không, không phải. Tôi đã nhìn thấy điều này liên tục được tham chiếu trong suốt blogs và không tìm thấy ví dụ cụ thể về việc triển khai. Nó có vẻ liên quan đến thực tế là các chỉ mục không gian được lọc các chỉ mục, không được hỗ trợ trong Entity Framework.
Như hỗ trợ cho câu trả lời của tôi, tôi đã xây dựng một ứng dụng bảng điều khiển POC với phiên bản mới nhất của khung thực thể (6.1). Tôi mất các bước sau
- Tạo một mô hình mà đã có một tài sản của các loại DbGeography
- di cư tự động Enabled
Ran Cập nhật cơ sở dữ liệu--verbose bảo hiểm di chuyển với sự bổ sung của một chỉ số được chạy. Chỉ số sử dụng như sau:
modelBuilder.Entity<LocationEntity>().Property(t => t.Coordinates).HasColumnAnnotation("Index", new IndexAnnotation(new IndexAttribute("ix_locationentity_coordinates")));
Không chỉ được tạo ra, nhưng không phải đã làm sụp đổ ứng dụng. Tôi có thể thử hoán vị về điều này, nhưng ví dụ của tôi dường như tuân theo quy ước về khung pháp nhân: Official Fluent Documentation
Cách duy nhất tôi biết để làm điều này là thông qua di chuyển "tùy chỉnh". Trong EF6, tôi thêm một sự di trú (trong ví dụ bên dưới nó có tên là "V1"), dẫn đến một sự di trú mới với các phương thức Up() và Down() rỗng. Sau đó bạn có thể thêm các lệnh SQL tùy chỉnh vào các phương thức này trước khi chạy cơ sở dữ liệu cập nhật để đặt chúng trong luồng di chuyển "bình thường".
Có thể sửa đổi di chuyển hiện tại để thêm các tính năng này, nhưng tôi thích thực tế để giữ cho các di chuyển tự động được phân tách riêng biệt khỏi các tùy chỉnh của tôi.
public partial class V1 : DbMigration
{
public override void Up()
{
Sql("CREATE SPATIAL INDEX [IX_UserProfileAddresses_Location] ON [dbo].[UserProfileAddresses](Location)");
}
public override void Down()
{
Sql("DROP INDEX [IX_UserProfileAddresses_Location] ON [dbo].[UserProfileAddresses]");
}
}
Không phải là phương pháp lý tưởng, nhưng không quá tệ vì nó tuân theo mẫu di chuyển "bình thường" cho EF.
- 1. tạo API thông thạo
- 2. Tạo chỉ mục bảng bằng cách sử dụng Fluent NHibernate
- 3. tạo mẫu chỉ mục bằng cách sử dụng java api trong tìm kiếm đàn hồi
- 4. Làm cách nào để gỡ lỗi API thông thạo?
- 5. tạo api bằng cách sử dụng php
- 6. EF Mã Đầu - Thành thạo API (WithRequiredDependent và WithRequiredPrincipal)
- 7. Cách sử dụng các phím chuỗi trong (thông thạo) NHibernate
- 8. Sử dụng Chỉ mục Không gian
- 9. Làm cách nào để tìm kiếm nhiều chỉ mục bằng cách sử dụng Azure Search API?
- 10. API thông thạo - một đến nhiều
- 11. Chỉ định mã khung thực thể khóa ngoại khóa Trước tiên, thông thạo Api
- 12. API NHibernate thông thạo và .NET 2.0
- 13. Một khung Entity thông minh hơn Codefirst thông thạo API
- 14. Sửa HttpClient cảnh báo "không hợp lệ hết hạn thuộc tính" sử dụng thông thạo API
- 15. Cách tạo chuỗi chứng chỉ bằng cách sử dụng keytool?
- 16. Làm thế nào để bạn có được trình phân tích cú pháp API web API để làm việc với ánh xạ API thông thạo EF
- 17. Tải xuống tệp văn bản được tạo bằng cách sử dụng api không gian tệp HTML5 bằng javascript trên chrome
- 18. Làm cách nào để thêm khóa duy nhất kết hợp bằng EF 6 Fluent Api?
- 19. Tìm chỉ mục hàng bảng bằng cách sử dụng jQuery
- 20. Làm thế nào để thay đổi thứ tự cột trong một chỉ mục đa cột bằng cách sử dụng thông thạo-nhibernate?
- 21. Tạo một thẻ mới bằng cách sử dụng API Trello
- 22. Trình tạo thông thạo chung trong Java
- 23. Tạo thư mục bằng cách sử dụng tập tin bat
- 24. Tạo danh sách phát Kênh Youtube bằng cách sử dụng API mục tiêu-C
- 25. Trả lại ID mục công việc TFS mới được tạo bằng cách sử dụng API TFS?
- 26. Tạo EF CodeFirst DbContext sử dụng Roslyn
- 27. Cách tạo thư mục trong Google Drive bằng .NET API?
- 28. Thông thạo NHibernate - cách cấu hình cho oracle?
- 29. Tạo chỉ mục chuỗi bằng Mã số
- 30. thời gian tạo chỉ mục với ProcessClusterEventTimeoutException