2012-11-28 23 views
8

VS 2012 Express'te WP8 uygulamasını geliştiriyorum. Windows Phone ve Sqlite-net için yüklü SQLite. Ve Windows Phone için SQLite referans olarak alındı.sqlite.cs sqlite3 ve topluluğu bulamadı

Ben diyor projeyi oluşturmaya çalışıyordum Ancak zaman:

Hatası 1 tipi veya ad alanı adı 'Topluluk' bulunamadı (bir kullanarak yönergesi veya bir derleme başvurusu eksik?)

ve

Hata 4 tipi veya ad alanı adı 'Sqlite3' bulunamadı (bir kullanarak yönergesi veya bir derleme başvurusu eksik?)

ne kaçırdım?

cevap

4

Test ettim, Windows Phone 8 ve Sqlite ile biraz problem gibi görünüyor.

Sorununuzu çözmeniz gereken ilk şey, uygulamaya "Community.Csharpsqlite.WP" referansını eklemek. Bunu yapmak için, Nuget paket yöneticisini açın ve "csharpsqlite" yazın ve sonuçtaki nuget paketini uygulamanıza yükleyin. Bu, sorunuzda bahsettiğiniz yukarıdaki sorunları da giderir. ama agian, başka bir problemi gündeme getirir. "Community.Csharpsqlite.WP" ve "sqlite-net" den SQLite.cs dosyası arasında bazı uyumsuz yöntemler vardır. Bunun için bir çözüm, uyumsuzlukları gidermek için SQLite.cs'deki yöntemleri manuel olarak değiştirmektir.

Alternatif olarak, yukarıdaki işlem sizin için çalışmazsa, dotnetslackers link numaralı belgede belirtildiği gibi WP7 sqlite işlemini kullanın. Bunu ayrı bir projede test edin ve umarım bu işe yarayacaktır.

+0

Teşekkürler, ben bir şans verecektir. – Nexus2020

+1

, yazdığı tarihten bu yana daha fazla nuget paketi eklendiğinden, http://www.nuget.org/packages/wp7sqlite/ paketini indirdiğinizden emin olun. –

9

Şartlı derleme sembolünüze USE_WP8_NATIVE_SQLITE eklemeyi unuttuğunu düşünüyorum.

#if USE_CSHARP_SQLITE 
using Sqlite3 = Community.CsharpSqlite.Sqlite3; 
using Sqlite3DatabaseHandle = Community.CsharpSqlite.Sqlite3.sqlite3; 
using Sqlite3Statement = Community.CsharpSqlite.Sqlite3.Vdbe; 
#elif USE_WP8_NATIVE_SQLITE 
using Sqlite3 = Sqlite.Sqlite3; 
using Sqlite3DatabaseHandle = Sqlite.Database; 
using Sqlite3Statement = Sqlite.Statement; 
1

Eğer SQLite adlı çözümünüz için C++ projesini eklemek bir talimat var gönderide bu post

talimat izledi. Github'dan alıyorsunuz. Kuşkusuz bu yazı içinde çok gizli ve kaçırmak kolaydır.

Çözümünüze C++ projesini dahil ettikten sonra, C# projenizden ona bir başvuru eklemelisiniz.

başvuru ekleyin -> çözüm ->referans Bundan sonra

, ve çalışması gerekir inşa sabit USE_WP8_NATIVE_SQLITE ekleyerek gibi C++ "SQLite" projesi seçin. SQLite içinde

1

.cs, sen sadece #elif USE_WP8_NATIVE_SQLITE içindeki kodları ile #if USE_CSHARP_SQLITE içindeki kodları yerine ve gitmek iyidir böyle çizgiler

#if USE_CSHARP_SQLITE 
... 
... 
#elif USE_WP8_NATIVE_SQLITE 
... 
... 

göreceksiniz çeşitli yerler vardır. Veya kısa bir yöntem de var. Properties-> kurmak ve sonra gidin; "USE_WP8_NATIVE_SQLITE" ekleyin ve çözümü yeniden oluşturun. Bu benim için çalıştı