سؤال

يمكن .صافي (التعليمات البرمجية المدارة) القراءة والكتابة إلى CouchDB?

أود أن بناء جزء من المشروع أن تقوم إدارة الوثائق باستخدام CouchDB

هل كانت مفيدة؟

المحلول

ونلقي نظرة على SharpCouch الطبقة فائدة.

ووهي فئة المجمع البسيطة لAPI HTTP كاوتش دي بي.

نصائح أخرى

في أواخر الإجابة لكن هل تحقق أرجوحة.انها نشطة في إنتاج استخدامها في العديد من المشاريع قريبا و هو تلقي تحديثات منتظمة و الإصلاحات.إلى جانب الأساسية وجوه استمرار أرجوحة يعطيك:

  • صحيح POCO.أنت لا تحتاج حتى 'id' الممتلكات ؛ أرجوحة المسارات التي داخليا.
  • دعم قوي وجهات النظر ، بما في ذلك وسيلة سهلة لاستخدام API يجيد أن كل من يولد وينفذ وجهات النظر ، ودعم إنشاء خريطة مخصصة/الحد من وجهات النظر.
  • المرفقات الدعم.
  • عام Repository<> الدرجة التي تساعد على تحقيق الاستفسارات الخاصة بك/المشاهدات (أي_Design doc) مع c# رمز التطبيق.مستودعات هي المسؤولة عن الحفاظ على _design مستندات, و هذا يساعد على الحفاظ على CouchDB وجهات النظر من الشعور تخزين procs.
  • كامل وحدة اختبار جناح.ليس هذا هو النموذج البرمجيات.

نعم.

هنا للحصول على تعليمات حول تثبيت كاوتش دي بي على النوافذ.

وهنا هو وجود صلة ل الابتداء مع المادة C # الويكي. هناك صلة إلى مجمع صافي في تلك المادة. سيكون من السهل جدا للفة الخاصة بك أيضا.

ونظرا إلى أن تقوم بالاتصال بشكل عام مع كاوتش دي بي على REST و JSON، أتصور أنه لن يكون من الصعب جدا لاستخدام <لأ href = "http://james.newtonking.com/pages/json-net.aspx "يختلط =" noreferrer نوفولو "> JSON.NET وWebClient العادي / HttpWebRequest الطبقات للقيام بذلك. لم أحاول بنفسي، واعتبارها لكم ...

وليتل في وقت متأخر إلى اللعبة ولكن هناك مشروع مفتوح المصدر لتشغيل جديد مكتوب في C # على العميل المتزامن HTTP وافتراضيا JSON.Net Newtonsoft لالتسلسل (للتحويل). MyCouch - بسيطة المتزامن العميل كاوتش دي بي لصافي

وظيفة التي وصول موجود هنا: <لأ href = "http://danielwertheim.se/get-up-and-running-with-couchdb-and-c-using-mycouch-on-windows/" يختلط = "noreferrer نوفولو"> http://danielwertheim.se/get-up-and-running-with-couchdb-and-c-using-mycouch-on-windows/

إبقاء العين على العثمانية مشروع مفتوح المصدر مكتوب بلغة C#.فإنه لا يزال في التنمية الثقيلة ، ولكن أردت أن أشير إليه كخيار المشاريع في مراحل التخطيط.وسوف أقوم بتحديث هذا المنصب كما يحصل أقرب إلى الانتهاء.يمكنك عرض المصدر جيثب.قراءة التمهيدي أن نرى أمثلة ما هو ممكن مع النسخة الحالية.

  • على عكس SharpCouch ، والذي يستخدم السلاسل بكثافة ، العثمانية يستخدم الأدوية على التلقائي التسلسل ، desrialization الخرائط كائن من سلسلة JSON والعكس بالعكس.كل هذا دون الكائنات الحاجة أن ترث قبالة واجهة أو قاعدة فئة.
  • ويستخدم Json.Net تحت التعامل مع JSON التسلسل ، إلغاء التسلسل.
  • خرائط راحة رموز الخطأ CouchDB يعود إلى الاستثناءات.
  • المخطط الميزة:معرف مولدات لتوليد هوية عن الكائنات استمرت
  • المخطط الميزة:ضمني حاليا متفائل قفل عبر الوثيقة التنقيحات العثمانية سوف تستخدم الهوية خريطة للحفاظ على المسار الصحيح سوف رمي استثناء عندما يحدث تعارض.
  • المخطط الميزة:وسوف تكون أحادية متوافق.
  • المخطط الميزة:هذا هو الطريق, ولكن أنا لا خطة على وجود LINQ التعبير عن خريطة/خفض الوظائف التي أعرب CouchDB باستخدام جافا سكريبت.

وهو إلى حد ما مشروع جديد ، ولكن نشطة جدا.بالطبع, أنا منحاز قليلا أيضا.;-)

وأيضا إلقاء نظرة على ديوان - مجمع خفيفة الوزن للالمعهد اليونيسكو

ولقد استخدمت JSON.NET بالتزامن مع الطبقة العميل HTTP عدة بداية MS REST لدمج لكاوتش دي بي وأنها تعمل بشكل جيد حقا.

ويكي

وكاوتش دي بي لديها قائمة من API لC # (مع خصائصها) إذا كنت ترغب في آخر تطورات الوضع: <لأ href = "http://wiki.apache.org/couchdb/Getting_started_with_C٪23" يختلط = "نوفولو" > http://wiki.apache.org/couchdb/Getting_started_with_C٪23

من السهل جدا استخدام API. NET للكاوتش دي بي شملت في WDK10 أن تتمكن من انتزاع من HTTP: // code.google.com/p/skitsanoswdk/ أنها مرنة جدا ويسمح لك للتعامل مع البيانات الخاصة بك على الأشياء ومستوى سلمان النقي.

الخيارات (وأمر آخر تحديث):

http://www.sharplearningcurve.com/wiki/Symbiote- Relax.ashx. الاسترخاء هو "التجريد API صافي من (ممتاز) API مريحة كاوتش دي بي في. ويشمل واجهة على مستودع للمستند التفاعل وحدة تحكم الخادم للمهام الإدارية نوع."

واحد أكثر - CouchDBClient: https://github.com/ttutisani/CouchDBClient

تنويه: أنا مؤلف

.

وحاولت أن تجعل CouchDBClient أكثر ملاءمة للعمل مع كائنات مخصصة - وهذا ما عادة تطبيقات متجر في قاعدة البيانات

عودة عندما بدأت في كتابة هذا الإطار، جميع الآخرين التي وجدت وحاول تبذل انطباع التوقيعات طريقة غير موحدة (مسمى باستخدام مختلف الاتفاقيات وأصعب لتخمين ما فعلوه)، وليس واجهات موحدة (بعض العمليات حول سلسلة مستندات، والبعض الآخر حول مستندات سلمان)، وليس مرنا جدا (بعض عمل فقط مع سلاسل، والبعض الآخر فقط مع الكائنات)، أم لا مجردة جدا (كان لا يعرف كاوتش دي بي REST API أول من استخدم بشكل صحيح). أفترض وعلى أمل أنها قد نضجت منذ ذلك الحين، ولكن على الأقل تم تصميم هذا واحد حتى طعمي.

وأنا على أمل أن CouchDBClient يمكن خلق شعور من التجريد مريح دون الحاجة إلى القلق حول API الأساسي أكثر من اللازم، والتركيز فقط على التطبيق الخاص بك، وكيف يخزن ويسترجع الأشياء التي يحتاجها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top