当前位置:  开发笔记 > 编程语言 > 正文

OpenRasta支持Mono吗?

如何解决《OpenRasta支持Mono吗?》经验,为你挑选了2个好方法。

虽然Mono支持对我们来说不是什么大不了的事,但我认为OpenRasta支持它,因为它有一些关于它的提交消息.

好吧,我尝试在Mono上构建它并获得了Ambiguous类型引用(在手动创建10个obj目录之后.)所以我尝试使用我手头上的预构建程序集,这给了我一个Object Reference Not Set To Instance of an Object(我用单声道的常见错误.. )at OpenRasta.Diagnostics.DebuggerLoggingTraceListener.WriteAll(使用xsp2)

是否有官方支持Mono或我错过了一些额外的部署步骤?



1> jkirk..:

我已经设法得到一个简单的OpenRasta示例,在XML/JSON中提供一个简单的表示,并通过OpenBastard.Envrionments.HttpListenerHostWithConfiguration托管,在Mono(2.6.3)上运行,对其进行一小组更改(OpenRasta的;特别是2.0) .3000分支)源代码.

我已经在这里为我感兴趣的人提供了我的补丁.这些变化应该是相当自我解释的(我已经包含了评论),但我还将概述下面修改的原因......

    OpenRasta.Diagnostics.DebuggerLoggingTraceListener假定在System.Diagnostics.TraceSource调用时将传递对System.Diagnostics.TraceEventCache实例的引用.这个假设适用于.NET框架,但Mono的TraceSource实现总是传递一个空引用.

    Mono为OpenRasta.Hosting.AmbientContext和OpenRasta.Hosting.ContextScope中引用的System.Runtime.Remoting.Messaging.CallContext.HostContext属性的get和set方法抛出NotImplementedException.

    当未明确关闭与先前请求相对应的System.Net.HttpListenerResponse对象或其基础流时,来自客户端的后续请求可能会失败.这一点我不太清楚,MSDN文档声明必须关闭响应对象,但我遇到的问题在.NET框架上运行时不会出现.

我目前正在开发一个业余爱好项目,需要在Mono上设计和构建RESTful Web服务,我会在需要时更新补丁; 希望有人会觉得它很有用.

免责声明:我对OpenRasta非常陌生,而且对于C#/"严肃"的软件开发来说相对较新.我没有测试过上面提到的OpenRasta的任何其他组件,单元测试仍然很难.你的里程可能会有所不同.



2> SerialSeb..:

OpenRasta目前尚未在单声道上进行测试.这种情况随着下一次迭代而改变,但答案是"我不知道".

DebuggerLoggingTraceListener正在写入调试器输出,mono可能对代码的工作方式有不同的期望.

推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有