2012-05-15 33 views
5

Tôi có 2 thùng trong Couchbase là loại Couchbase và loại còn lại là loại Memcachced: khi chạy thử nghiệm, tôi gặp lỗi: Máy chủ yếu tố chỉ có thể xuất hiện một lần trong phần này. Bên dưới là cấu hình của tôi:Nhiều cấu hình thùng Couchbase trong .NET

<couchbase> 
    <servers bucket="RepositoryCache" bucketPassword=""> 
     <add uri="http://127.0.0.1:8091/pools/default"/> 
    </servers> 

    <servers bucket="default" bucketPassword=""> 
     <add uri="http://127.0.0.1:8091/pools/default"/> 
    </servers> 
    </couchbase> 

How to configure multiple buckets and resolve the issue? I hv read the manual and I could not find much help. 

Trả lời

0

Tôi đã hỏi câu hỏi này trước đó Couchbase multiple buckets in .NET app.config nhưng không có ai trả lời.

Tôi đã xem nhanh thông qua couchbase. ClientConfigurationSection của thư viện mạng và trong phần "couchbase" của cấu hình, bạn chỉ có thể xác định một máy chủ.

Vì vậy, bạn có thể xác định một nhóm "mặc định" sẽ lưu trữ parametrs kết nối của một nhóm khác. Hoặc kết nối hardcode setttings. Hoặc tạo tệp xml riêng, sẽ chứa thông số kết nối và giống như cấu hình của bạn được đăng ở trên.

+0

Tài liệu của họ cần một số công việc nghiêm túc. Thật kinh khủng! – slimflem

0

Tôi đã tìm ra cách để giải quyết vấn đề trên.

Chúng tôi có thể sử dụng quá tải hàm xây dựng CouchbaseClient và chuyển vào tên và mật khẩu của nhóm. Ví dụ: var client = new CouchbaseClient ("default", "");

Không cần phải đặt tất cả cấu hình nhóm trong tệp ứng dụng hoặc web.cong.

0

Nếu bạn muốn vẫn sử dụng App | Web.config, bạn cũng có thể chỉ cần tạo một phần cấu hình thứ hai như sau:

<section name="otherconfig" type="Couchbase.Configuration.CouchbaseClientSection, Couchbase"/> 

<otherconfig> 
    <servers bucket="default" bucketPassword=""> 
     <add uri="http://127.0.0.1:8091/pools"/> 
    </servers> 
    </otherconfig> 

var client = new CouchbaseClient((CouchbaseClientSection)ConfigurationManager.GetSection("otherconfig")); 
1

Từ the documentation, có vẻ như bạn có thể làm điều đó như thế này:

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
    <sectionGroup name="couchbase"> 
     <section name="bucket-a" type="Couchbase.Configuration.CouchbaseClientSection, Couchbase"/> 
     <section name="bucket-b" type="Couchbase.Configuration.CouchbaseClientSection, Couchbase"/> 
    </sectionGroup> 
    </configSections> 

    <couchbase> 
    <bucket-a> 
     <servers bucket="default"> 
     <add uri="http://127.0.0.1:8091/pools" /> 
     </servers> 
    </bucket-a> 
    <bucket-b> 
     <servers bucket="beernique" bucketPassword="b33rs"> 
     <add uri="http://127.0.0.1:8091/pools" /> 
     </servers> 
    </bucket-b> 
    </couchbase> 

    <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
    </startup> 
</configuration> 
Các vấn đề liên quan