سؤال

سأبني تطبيقًا متصلاً أحيانًا ومتصلًا (OCA). ما هي التقنيات التي تقترح أن أستخدمها.

ها هي معاييري:

  1. .NET Shop (3.5SP1)
  2. C# للرمز وراء (Winform ، WPF ، Silverlight)
  3. الواجهة الخلفية لخادم SQL (2005 أو ربما 2008 في انتظار الموافقة)
  4. مطور منفرد
  5. منفرد SQL مسؤول
  6. مستخدمي نهاية التكنولوجيا المنخفضة
  7. النطاق الترددي المنخفض إلى 5 مكاتب فرعية
  8. هذا هو تطبيق LOB ولكن ليس نقاط البيع.
  9. غالبية المستخدمين لديهم أجهزة كمبيوتر محمولة يأخذونها إلى منزل الأعضاء
  10. يتم تخزين بيانات هذا التطبيق في 5 قواعد بيانات منفصلة ، على الرغم من أن في حالة SQL واحدة.

أنا أبحث عن توصيات محددة حول أي طريق للاختيار. دمج النسخ المتماثل أو مزودات مزامنة قاعدة بيانات إطار المزامنة؟ SQL Express أو SQL CE في المشترك؟ هل يمكنني استخدام LINQ إلى SQL لـ DAL؟

هو Silverlight "غير متصل/خارج تطبيق المتصفح" مثال هنا, ، ممكن؟

هذا هو أول تطبيق لي التجاري كبير ، لذا نرحب بأي تعليقات من ذوي الخبرة.


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

أيضًا اسم الأعضاء النموذجيين وعنوانه ورقم الهاتف ، إلخ. في الغالب ، هذا تطبيق لتخزين البيانات واسترجاعها يسهل التقارير. تتم القليل جدًا من "المعالجة" ، ويعمل الممرضون والأخصائيون الاجتماعيون في فرق مخصصة للأعضاء ، لذلك عادةً ما يكون لدي القليل جدًا من تبادل البيانات أو تعارضات البيانات المحتملة. الممرضات و SW أيضًا مسؤولون عن مختلف المجالات من MCP (خطة مركز الأعضاء)


سؤال إضافي ؛ هل Sync Framework حقًا مجرد خيار قابل للتطبيق إذا كان بإمكاني استخدام SQL 2008؟ يبدو بهذه الطريقة بسبب تغيير تتبع وما إلى ذلك .... الأفكار؟

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

المحلول

بمجرد حل مشكلة الكشف عن التغيير وحركة البيانات ، يكون كل شيء آخر تافهة. بمعنى آخر ، تقنيات مثل WPF و Silverlight و Forms وحتى WCF متعامد مع مشكلتك الرئيسية ويجب أن يعتمد اختيارك على تفضيلاتك الشخصية وخبراتك. الجوز الصلب الحقيقي للكسر هو العمل غير المتصل ومزامنة التغييرات. الذي يترك طريقتين خارج الصندوق: إطار التزامن أو النسخ المتماثل.

أود أن أقول ، لسيناريو الخاص بك ، بالتأكيد إطار التزامن. تم تصميم النسخ المتماثل ، مثل جميع أشكال النسخ المتماثل ، للأنظمة التي ترتبط باستمرار مع قطع اتصال متقطعة. والأكثر تكرارًا لا يمكن أن يعمل إلا على أسماء ثابتة. يتمتع أجهزة الكمبيوتر المحمولة التي تتصل من مختلف النقاط الساخنة ومواصفات مزودي خدمة الإنترنت عادةً بتغيير أسماء FQ مع كل اتصال. لا يمكن للتكرار التغلب على هذا فقط إذا تم استخدام VPN من الفرز وعادة ما يكون VPN مشكلة دعم رئيسية. النسخ المتماثل ليس مصممًا للتنقل العالي لأنظمة OCA.

سيؤدي إطار Synch إلى إجبارك إلى حد كبير على SQL 2008 الخلفي بسبب الحاجة إلى ذلك تغيير التقاط البيانات أو تغيير التتبع, ، كلاهما يجري SQL 2008 فقط ميزات.

لا يزال لديك الكثير من المشكلات الصعبة التي يجب حلها (المصادقة والإصدار والترقية ، وسياسات حل تعارض البيانات ، وتأمين البيانات على العميل لفقدان الوسائط العرضية وما إلى ذلك)

نصائح أخرى

أنا شخصياً أود أن أقول:

  • .NET 3.5
  • خدمات بيانات WCF (للتواصل بين تطبيق العميل وبياناتك)
  • SQL Server 2K5/2K8 (أيهما يمكنك استخدامه)
  • Silverlight مع وظيفة المتصفح
  • vistadb (لتخزين البيانات محليًا على العميل حتى تتمكن من الضغط على الخادم)

استعمال معرف فريد للمفتاح إذا كنت تقوم بإنشاء أشياء أثناء عدم الاتصال بالإنترنت وغير متصلة وعندما تقوم بالاتصال ، قم بتحديث قاعدة البيانات.

سيكون هذا أسهل من استخدام مفتاح التركيب التلقائي

بعد أن عملت على تطبيق متصل أحيانًا ، أشجعك على البحث في SQL Server CE لآلات العميل ، مع خدمات Sync للتعامل مع الاتصالات. هنا برنامج تعليمي جيد.

يمكنك إنشاء هذه الأشياء من الألف إلى الياء ، على ما يبدو.

ومع ذلك ، يبدو أن هذا أمر فظيع مثل تطبيق CRM ، ولن يفاجئني إذا تمكنت من العثور على حزمة برامج مؤسسة للقيام بذلك دون البدء من نقطة الصفر وبدلاً من ذلك تعديل أحد التكوينات لتلبية قواعد عملك.

في حياة سابقة ، كنت مطور تكوين لهذا الشيء المسمى سيبل قد يكون ذلك قريبًا مما تبحث عنه. لديهم حتى أداة المزامنة المدمجة تسمى Siebel Remote.

قد يكون طريقًا أرخص للذهاب بدلاً من التدحرج من الصفر.

كتبت برنامج أخذ طلب لممثلي مبيعات النبيذ. ها هو الفيديو. يتم تثبيت برنامج العميل باستخدام Click-Once. يقوم أيضًا بتثبيت SQL Server Express ويقوم بتحميل قاعدة البيانات. لقد استخدمت Microsoft Sync Framework لمزامنة قاعدة البيانات المحلية مع تلك الموجودة على الخادم (انظر القسم الأخير من الفيديو.)

  • مع العملاء الأقوياء الآن ، لا أرى أي سبب لعدم استخدام SQL Server Express ، فهو مجاني بحد أقصى قدره 4 جيجابايت.

  • كان لدى SQL CE الكثير من القيود - لا توجد بروكس مخزنة.

  • ستحتاج إلى استخدام GUIDS في كل مكان كمفتاح أساسي - راجع NewSequentialId () الجديد.

  • أنا أحب النقر ، إنه توفير وقت كبير.

إنني أتطلع إلى Silverlight ، لكن لم يكن لدي وقت للنظر فيه. لست متأكدًا مما إذا كنت سأفعل ذلك مع Silverlight إذا قمت بذلك الآن أم لا.

بعد قول كل هذا ، هذا ليس مشروعًا لأي شخص يفتقر إلى الخبرة. لذلك أود أيضًا الحصول على بعض المساعدة ذات الخبرة.

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