Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Orchardcms Orchard CMS内容类型是否应用于应用程序域模型?_Orchardcms_Domain Model - Fatal编程技术网

Orchardcms Orchard CMS内容类型是否应用于应用程序域模型?

Orchardcms Orchard CMS内容类型是否应用于应用程序域模型?,orchardcms,domain-model,Orchardcms,Domain Model,我一直在使用ASP.NETMVC4编写一个应用程序,其中大部分数据都存储在MongoDB中。这对于大多数我认为我的应用程序的“肉类”来说是非常有用的,它的功能使它与众不同。 但是,现在我需要添加静态内容和管理功能(设置帐户、计费、帮助等)。我强烈倾向于使用Orchard CMS来处理所有这些功能,然后将我目前所做的迁移到Orchard模块中 问题是:我应该使用Orchard的内容类型对多少数据进行建模?我计划继续在Mongo中存储至少一部分数据,所以现在我不确定该把数据放在哪里 您以前在Orch

我一直在使用ASP.NETMVC4编写一个应用程序,其中大部分数据都存储在MongoDB中。这对于大多数我认为我的应用程序的“肉类”来说是非常有用的,它的功能使它与众不同。

但是,现在我需要添加静态内容和管理功能(设置帐户、计费、帮助等)。我强烈倾向于使用Orchard CMS来处理所有这些功能,然后将我目前所做的迁移到Orchard模块中

问题是:我应该使用Orchard的内容类型对多少数据进行建模?我计划继续在Mongo中存储至少一部分数据,所以现在我不确定该把数据放在哪里


您以前在Orchard中实现过web应用程序吗?你的域数据到哪里去了?如果您使用了内容类型,有什么经验教训吗?

为什么要继续使用MongoDB?在Orchard中,所有数据访问都由NHibernate完成,使用xxxRecord类将虚拟财产映射到列。它与SQL Compact、SQL Server 2008(和R2)和SQL Azure配合使用

我不知道RavenDB的状态,但可能有一个模块使用RavenDB存储blob数据,或者只是将其用作非sql数据存储

就个人而言,我不会使用多个数据存储

ContentType包含多个“可附加”的ContentPart和ContentFields,可以是代码形式,也可以使用orchard管理员用户界面。如果愿意,您可以使用存储库,但只能对不直接属于ContentPart的数据使用存储库。DefaultContentManager具有版本控制、发布、删除等功能。。如果你删除一个ContentType,它只会得到一个已经被删除的标志。(除非您使用另一个执行delete语句的模块)使用存储库的存在一种风险,即您认为该项在不存在时仍然存在


作为您问题的最终答案:是的,您应该使用ContentType作为域模型,并且您不必担心差异查询的执行。

应用程序数据与文档存储非常配合,文档存储允许多个用户同时自动修改文档,并且数据具有严格的层次结构。层次结构是关系数据库中的一个难题,我尤其不希望像内容类型这样的东西支持对树的有效修改/遍历。你可以混合数据存储,毕竟是MVC。但请记住,如果您建立自己的数据库,那么像多租户这样的事情将更加困难。您可能想等待(2012年4月1日可用,或者现在使用RTM)SQL Server Denali(SQL Server 2012),它支持文件表,这对于分层数据存储非常有用:)请在我的其他评论之后提供帮助,您是否查看了SQL Server中的文件表?@rfcdejong当然,它很有趣,但可能不是适合此项工作的工具。如果我真的认为SQL是正确的工具,我可能会使用SQL Server的分层ID,它自2008年以来就被包括在内。