TLDR; Entity framework 5 kodlu geçişlerini kullanarak tam metin dizini nasıl eklersinizVarlık Çerçeve Kodlu Geçişler içinde tam metin dizini oluşturma
Entity çerçeve geçişlerini kullanarak bir veritabanına tam metin dizini eklerken sorunlar yaşıyorum. Başlangıçta orada olmalı, bu yüzden eklemek için otomatik olarak oluşturulan InitialCreate geçişini değiştirmeye çalışıyorum.
DbMigrations API'si aracılığıyla bunu yapmanın bir yolu olmadığı için, 'Yukarı' kodunun sonunda satır içi sql çalıştırmaya başvurdum. Bu bu sql ulaşana kadar her şey iyi oluşturulmuş olur çalıştığında
Sql("create fulltext catalog AppNameCatalog;");
Sql("create fulltext index on Document (Data type column Extension) key index [PK_dbo.Document] on AppNameCatalog;");
, o zaman bir kullanıcı hareket içinde kullanılamaz fulltext KATALOG oluşturma deyim sql hatası 'atar. '. Beklenen ve tasarlanan şekilde çalışıyor.
Neyse ki Sql(), taşıma işlemi dışındaki sql'yi çalıştırmanıza izin veren bir aşırı yüklemeye sahiptir. Korku veren! Düşündüm.
Sql("create fulltext catalog AppNameCatalog;", true);
Sql("create fulltext index on Document (Data type column Extension) key index [PK_dbo.Document] on AppNameCatalog;", true);
Ama düşük ve zaman aşımı süresi doldu, yeni bir zaman aşımı hatası 'içinde (yukarıya bakınız) sonuçları bunu yapmak için kodunu değiştirme beğenirsin. İşlemin tamamlanmasından önce zaman aşımı süresi doldu veya sunucu yanıt vermiyor. '
SQL'i tükürmeyi ve el ile çalıştırmayı denedim ve iyi çalışıyor. Ayrıca, oluşturulan sql'i bir işlemin dışında çalıştırıp kullanmadan da farklılaştırdım ve aynı şekilde sql'in yürütüldüğü şekilde bir şey olması gerekiyor.
Yardımlarınız için şimdiden teşekkür ederiz!
Hey, giriş için teşekkürler. O zaman ayrı bir göç olarak mı çalıştı? –
Yip, Ayrı bir geçiş olarak çalışıyorum. Tablo oluşturma, InitialCreate geçişinde gerçekleşir ve Tam Metin Kataloğu ve Dizinler, InitialCreate geçişinden sonra gerçekleştirilmesi amaçlanan ayrı bir geçişte oluşturulur. – jspaey