2010-03-26 22 views
5

हालांकि मोनो समर्थन हमारे लिए एक बड़ी बात नहीं है, मैं समझ OpenRasta यह समर्थित कारण यह कुछ इसके बारे में संदेशों के लिए प्रतिबद्ध है ..क्या OpenRasta मोनो का समर्थन करता है?

ठीक है, मैं मोनो पर इसे बनाने की कोशिश की और मिल गया अस्पष्ट प्रकार संदर्भ (के बाद मैन्युअल रूप से बनाने जैसे 10 obj निर्देशिका।) तो मैं सिर्फ पहले से बनाए गए विधानसभाओं मैं हाथ पर पड़ा उपयोग करने की कोशिश और कहा कि मुझे एक Object Reference Not Set To Instance of an Object (सामान्य त्रुटि मैं मोनो के साथ है ..) OpenRasta.Diagnostics.DebuggerLoggingTraceListener.WriteAll पर (xsp2 का प्रयोग करके) दे दी है

वहाँ के लिए सरकारी समर्थन है मोनो या क्या मुझे तैनाती के लिए कुछ अतिरिक्त कदम याद आ रहा है?

उत्तर

5

इस समय मोनो पर ओपनरास्टा का परीक्षण नहीं किया जा रहा है। यह अगले पुनरावृत्ति के साथ बदल रहा है, लेकिन जवाब "मुझे नहीं पता" है।

डीबगर लॉजिंगट्रेस लिस्टनर डीबगर आउटपुट पर लिख रहा है, मोनो के पास कोड कैसे काम करता है इसकी अलग-अलग अपेक्षाएं हो सकती हैं।

+0

अरे यकीन नहीं था: सहित नेट आवेदन माइग्रेशन के तहत और ऐसे, लेकिन जब "अगली पुनरावृत्ति" वास्तव में है? क्या आप अब मोनो के साथ परीक्षण कर रहे हैं और क्या यह काम करता है? – Earlz

+0

आह, अधिकतर समर्थित यह ट्विटर से दिखाई देता है: http://twitter.com/serialseb/status/14623498399911936 – Earlz

6

मैं एक साधारण OpenRasta उदाहरण प्राप्त करने के लिए, एक्सएमएल/JSON में एक छोटी सी प्रतिनिधित्व की सेवा और OpenBastard.Envrionments.HttpListenerHostWithConfiguration के माध्यम से आयोजित किया था, इसकी (OpenRasta के में परिवर्तन का एक छोटा सा सेट के साथ मोनो (2.6.3) पर चल रहा है प्रबंधित किया है ; विशेष रूप से 2.0.3000 शाखा) स्रोत कोड।

मैंने रुचि रखने वाले किसी भी व्यक्ति के लिए अपना patch available here बनाया है। परिवर्तन काफी आत्म व्याख्यात्मक होना चाहिए (मैं टिप्पणियों को शामिल किया है) लेकिन मैं यह भी नीचे के संशोधनों के लिए कारणों की रूपरेखा तैयार करेंगे ...

  1. OpenRasta.Diagnostics.DebuggerLoggingTraceListener मानता है कि यह करने के लिए एक संदर्भ के पारित हो जाएगा System.Diagnostics.TraceEventCache का एक उदाहरण System.Diagnostics.TraceSource द्वारा लागू किया गया। यह धारणा .NET ढांचे पर है लेकिन ट्रेससोर्स के मोनो के कार्यान्वयन हमेशा एक शून्य संदर्भ पास करता है।

  2. मोनो दोनों प्राप्त और System.Runtime.Remoting.Messaging.CallContext.HostContext संपत्ति OpenRasta.Hosting.AmbientContext और OpenRasta.Hosting.ContextScope में संदर्भित का सेट तरीकों के लिए एक NotImplementedException फेंकता है।

  3. क्लाइंट से बाद के अनुरोध विफल हो सकते हैं जब System.Net.HttpListenerResponse ऑब्जेक्ट, या इसके अंतर्निहित स्ट्रीम को पिछले अनुरोध के अनुरूप स्पष्ट रूप से बंद नहीं किया गया है। इस बिंदु पर मैं कम स्पष्ट हूं, एमएसडीएन दस्तावेज बताता है कि प्रतिक्रिया वस्तु बंद होनी चाहिए, लेकिन जिस समस्या का सामना मैंने किया था, वह .NET ढांचे पर चलने पर स्वयं उपस्थित नहीं था।

मैं वर्तमान में एक शौक परियोजना है कि डिजाइनिंग जरूरत पर जोर देता पर काम कर रहा हूँ और मोनो पर एक RESTful वेब सेवा के निर्माण, मैं के रूप में पैच को अपडेट कर देंगे और जब मैं करने के लिए की जरूरत है; उम्मीद है कि किसी को यह उपयोगी लगेगा।

अस्वीकरण: मैं ओपनरास्टा के लिए बहुत नया हूं और सामान्य रूप से सी #/"गंभीर" सॉफ्टवेयर विकास के लिए अपेक्षाकृत नया हूं। मैंने उपरोक्त वर्णित ओपनरास्टा के किसी भी अन्य घटक का परीक्षण नहीं किया है और यूनिट परीक्षण कठिन विफल रहता है; आपका माइलेज शायद अलग-अलग होगा।

+0

क्या आपको अभी भी उस पैच को आसान मिला है? लिंक अब मर चुका है – firegrass

2

आप एक वेब सेवा रूपरेखा है कि यह भी मोनो पर चलता चाहते हैं तो आप http://www.servicestack.net

यह भी एक कंसोल अनुप्रयोग (वेब ​​सर्वर से स्वतंत्र) या किसी एएसपी में होस्ट किया जा सकता की जांच करनी चाहिए।जहां वेबसाइट के साथ पूछने के लिए

  • IIS 6,0/7,0
  • अपाचे + Mod_Mono XSP
  • FastCGI सक्षम Nginx, चेरोकी, आदि जैसे वेब सर्वर
संबंधित मुद्दे