7

एनएचबीरनेट का उपयोग करने और कुछ डीडीडी अवधारणाओं को लाने की कोशिश कर रहे वेबफॉर्म समाधान के लिए उचित परियोजना संरचना के रूप में आप क्या सलाह देते हैं?डीडीडी, एनएचबीर्नेट, और परियोजना संरचना/नामकरण

जड़ नाम स्थान और समाधान नाम मानते हुए नमूना

  • है Sample.Domain - मेरे डोमेन वस्तुओं और मेरे मानचित्रण फ़ाइलें
  • Sample.Repositories शामिल हैं - मेरी खजाने और nhibernate कनेक्शन कॉन्फ़िग फ़ाइल
  • नमूना शामिल व्यवसाय - इसमें मेरा व्यवसाय तर्क
  • नमूना.Web - वास्तविक वेबफॉर्म प्रोजेक्ट - सभी प्रस्तुति

मैं क्या भूल रहा हूँ? क्या इन नामों का एक और मानक तरीका है?
विषय पर कोई भी महान ब्लॉग पोस्ट?

+0

परीक्षण परियोजनाओं को शामिल करना चाहिए था। thx – BuddyJoe

+0

यह देखने के लिए कि क्या CodeCampServer करता है। स्रोत कोड की जांच नहीं कर सकता। अजीब भंडार ने त्रुटि को स्थानांतरित कर दिया है। कोई और इसे देखने में सक्षम है? विवरण: http://code.google.com/p/codecampserver/source/checkout – BuddyJoe

+2

आपका व्यावसायिक तर्क डोमेन में होना चाहिए। – Paco

उत्तर

3

कुछ हिस्सों में लापता कुछ समाधान और परीक्षण परियोजनाओं में आवश्यक सेवाओं के लिए एक केंद्रीय स्थान प्रतीत होता है। सेवाओं और कोड आवेदन

  • Sample.Data भर में इस्तेमाल किया जा करने की जरूरत है कि - - डोमेन वर्गों और भंडार इंटरफेस
  • Sample.Data.NHibernate - मानचित्रण

    • Sample.Core: मैं आमतौर पर कुछ इस तरह है फ़ाइलें, धाराप्रवाह config, आदि और भंडार कार्यान्वयन, मूल रूप से कुछ भी डेटा मानचित्रण परत विशिष्ट
    • Sample.Services - सेवा कार्यान्वयन और इंटरफेस
    • Sample.Web - वेब अनुप्रयोग

    मैं परीक्षण परियोजनाओं का मिलान पेड़ है:

    • टेस्ट \ Sample.Core.Tests
    • टेस्ट \ Sample.Data.NHibernate.Tests
    • आदि ...

    बेशक, परियोजना के आधार पर पेड़ अधिक जटिल हो जाएगा। चर्चा के लिए, Onion Architecture देखें। आप Domain-Driven Design पर नमूना परियोजनाओं को भी देख सकते हैं और देख सकते हैं कि आप उनसे क्या ले सकते हैं।

  • +0

    +1 शांत विचार। अच्छे लिंक – BuddyJoe

    2

    मैं पाया है हर किसी के नामकरण के लिए अपने स्वयं के प्राथमिकताएं हों, मैं पसंद:

    • Sample.Domain - डोमेन वस्तुओं, मानचित्रण फ़ाइलें
    • Sample.Services - व्यापार तर्क और सेवाओं (और खजाने, हालांकि मुझे इन्हें अलग करना देख सकता है)
    • नमूना वेब - वेब सामग्री।
    • नमूना। माइग्रेशन - डेटा माइग्रेशन।

    बेन Scheirman ने हाल ही में इस बारे में पोस्ट किया: Exporting Visual Studio Solutions with Solution Factory

    वह एक अलग संरचना का उपयोग करता है लेकिन आपके टेम्पलेट को मानकीकृत करने का एक शानदार तरीका भी शामिल करता है।

    +0

    बहुत अच्छा। इस समाधान फैक्टरी को आजमाएं। +1 – BuddyJoe

    2

    मैं इसे परियोजना के बजाए नामस्थान द्वारा पृथक करने की दिशा में सरल और दुबला रखता हूं, खासकर शुरुआत में। मैं आमतौर पर समाधान में तीन परियोजनाओं के साथ शुरू:

    • नमूना - नामस्थान Sample.Model, Sample.Model.Mappings, और Sample.Services शामिल हैं।
    • नमूना। परीक्षण - यूनिट परीक्षणों को नमूना के समान ही संरचित किया गया है।
    • Sample.Web - यूआई
    +0

    नमूना क्या है। मॉडल.मेपिंग्स के लिए? – BuddyJoe

    +0

    फ्लुएंट एनएचबेर्नेट मैपिंग क्लासेस। –

    +0

    गोचा। अभी तक इसका उपयोग नहीं कर रहा है। धन्यवाद। – BuddyJoe

    1

    यह कैसे s#arp architecture में किया जाता है आप देख सकते हैं। इसका एक बहुत ही ठोस वास्तुकला ढांचा

    संबंधित मुद्दे