我正在尝试在Winhost上的embeddedmode中运行Raven Db,但是我得到了一个带有以下stacktrace的securityexception:
System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) +0
System.Security.CodeAccessSecurityEngine.Check(CodeAccessPermission cap, StackCrawlMark& stackMark) +31
System.Security.CodeAccessPermission.Demand() +46
System.Net.NetworkInformation.IPGlobalProperties.GetIPGlobalProperties() +53
Raven.Database.Util.PortUtil.FindPort() in PortUtil.cs:34
Raven.Database.Util.PortUtil.GetPort(String portStr) in PortUtil.cs:17
Raven.Database.Config.InMemoryRavenConfiguration.Initialize() in InMemoryRavenConfiguration.cs:109
Raven.Database.Config.RavenConfiguration.LoadConfigurationAndInitialize(IEnumerable`1 values) in RavenConfiguration.cs:30
Raven.Database.Config.RavenConfiguration..ctor() in RavenConfiguration.cs:19
Raven.Client.Embedded.EmbeddableDocumentStore.get_Configuration() in EmbeddableDocumentStore.cs:45
Raven.Client.Embedded.EmbeddableDocumentStore.set_DataDirectory(String value) in EmbeddableDocumentStore.cs:69
StingyPrice.MvcApplication.Application_Start() in Global.asax.cs:42
我的应用程序以完全信任(内部)模式运行,但从该异常判断我正在大胆地假设Raven永远不会运行,除非他们放松了他们的安全策略。
我错了还是可以在Winhost上运行Raven Db? 此外,如果不可能,可以运行Raven Db的共享Web托管服务提供商列表将非常感激。 : - )
答案 0 :(得分:2)
RavenDB需要完全信任才能在服务器/嵌入模式下运行。
答案 1 :(得分:1)
您可以按照此处所述尝试www.winhost.com:
How can I run RavenDB in a shared hosting environment?
它有如此理想的完全信任允许,这是RavenDB应该寻找的东西,以避免当前的安全权限问题......
注意:我刚试过这个主机,可以确认它在完全信任的RavenDB中运行良好...: - )
答案 2 :(得分:1)
是的,您可以在Winhost上运行RavenDB。您需要更改web.config
文件,设置正确的Raven/WorkingDir
并启用完全信任。
运行时,您将收到有关WebSockets的错误消息。您可以打开支持服务单以启用它并禁用“重叠回收”。
如果您想在Winhost上试用RavenDb,我(Winhost的员工)写了official startup guide here。