サンプルプロジェクトはNuGetパッケージを参照するようにアップグレードされましたが、MovieRestプロジェクトはServiceStack.OrmLite.Sqlite.Mono NuGetパッケージを参照していませんでした(同期がとれていませんでした)。これを実行して、チェックインしました。
ここでVS.NET2012を使用してこれを行ったため、VS.NETソリューションファイルもアップグレードされたため、ベータチャネルで最新のMonoDevelop(3.1.1)を開く必要があります。
注:すべてのサンプルプロジェクトはVS.NETで開発されましたが、Hetzner Ubuntu vServerであるservicestack.netでホストされている場合、Mono/Linuxにデプロイされます。Linux / MonoホストでServiceStackベースのソフトウェアを実行する場合ほど、MonoDevelopでの開発には関心がありません。理想的には両方を実行する必要がありますが、主にVS.NETで開発しているため、MonoDevelopに対して常にテストを行っているわけではありません。
WindowsとMono+Linux/OSXのSqlite
SqliteはアンマネージドネイティブCライブラリであり、他の.NETとは異なり、複数のプラットフォームで同じバイナリを実行することはできません。
Windowsで.NETを使用する場合、ServiceStack.OrmLite.Sqlite
パッケージMono.Data.Sqlite.dll
はWindows / .NETの場合はアンマネージsqlite3.dll
インbin/
フォルダーを使用することを参照します(そのため、sqlite.dllは、[新しい場合はコピー]に設定されたコンテンツリソースとして設定する必要があります)。Linuxの場合はsqlite3.soを検索し、OSXの場合はライブラリルックアップパスでlibsqlite3.dylibを検索します。ホストOSにSqliteがインストールされている場合は、これらが自動的に検出されます。インストールされていない場合は、これらの共有ライブラリへのパスをLD_LIBRARY_PATH
環境変数に含める必要があります。