2012-06-10 2 views
0

Bonne journée!Couchbase .NET SDK

Je veux passer de MySQL à CouchBase et j'ai eu quelques problèmes à le faire. Après avoir lu tous les tutoriels, manuels et googler pendant des heures, je dois encore une réponse aux questions suivantes s'il vous plaît:

  1. Comment Déclarez-vous programatically une nouvelle instance de CouchBaseClient? Je dois me connecter à différents compartiments en fonction de l'utilisateur qui se connecte. Le tutoriel de démarrage mentionne seulement cela comme possible, mais ne donne aucune façon réelle de le faire.

  2. Comment créer de nouveaux compartiments par programme? J'ai besoin de cela pour créer un nouveau seau chaque fois que quelqu'un s'enregistre. Rien sur Internet concernant .NET, uniquement depuis telnet et via une ligne de commande.

Merci beaucoup!

Répondre

0

Réponses ci-dessous. Quelques points à considérer ... Il est relativement coûteux de créer une instance client. En règle générale, vous ne souhaitez pas créer un nouveau CouchbaseClient (avec affinité de compartiment) plus d'une fois par domaine d'application. De plus, gardez à l'esprit que les compartiments ne sont pas vraiment conçus pour être multi-locataires par utilisateur. Les seaux sont quelque peu analogues aux bases de données - si vous utilisiez MySQL pour cette application, créeriez-vous une nouvelle base de données pour chaque utilisateur?

Vous pouvez en savoir plus sur la configuration de plusieurs seaux dans la configuration à:

http://www.couchbase.com/wiki/display/couchbase/Couchbase+.NET+Client+Library#Couchbase.NETClientLibrary-UsingMultipleBucketswiththeCouchbaseClient

  1. var config = new CouchbaseClientConfiguration(); config.Urls.Add (nouvel Uri ("http: // localhost: 8091/pools/default")); config.Bucket = "default"; Var client = new CouchbaseClient (config);

2.

Cette fonctionnalité ne fait pas partie de la bibliothèque client .NET.

0

Réponse 1:

var client = new CouchbaseClient("bucketname1","password1"); 

var client2 = new CouchbaseClient("bucketname3","password3");