Asp.net mvc 3 从自定义数据源在ContentHandler中填充ContentPart
我们有一个使用RavenDB的现有应用程序,希望创建一个定制的Orchard管理模块,可以将数据读写到Raven中,以便我们能够管理数据。理想情况下,该实现将允许我们使用ContentParts,以便创建可重用的“模块” 有几个参考文献提到通过在ContentHandler中加载数据来访问Web服务中的数据,但我还没有找到一个实现。我已经能够使用控制器/视图读取/写入数据,但这似乎更具限制性 此外,我们需要管理的属性之一是图像。我们想利用媒体选择器字段在我们的管理界面中选择图像。只要我们可以通过浏览器访问图像,就可以将物理图像存储在Orchard中 有人能给我指出正确的方向吗Asp.net mvc 3 从自定义数据源在ContentHandler中填充ContentPart,asp.net-mvc-3,content-management-system,orchardcms,Asp.net Mvc 3,Content Management System,Orchardcms,我们有一个使用RavenDB的现有应用程序,希望创建一个定制的Orchard管理模块,可以将数据读写到Raven中,以便我们能够管理数据。理想情况下,该实现将允许我们使用ContentParts,以便创建可重用的“模块” 有几个参考文献提到通过在ContentHandler中加载数据来访问Web服务中的数据,但我还没有找到一个实现。我已经能够使用控制器/视图读取/写入数据,但这似乎更具限制性 此外,我们需要管理的属性之一是图像。我们想利用媒体选择器字段在我们的管理界面中选择图像。只要我们可以
谢谢 如果您使用的是Orchard内容项,
Id
已经存在-无需存储新的内容项。您需要使用一些标识符来绑定Orchard和后端存储,否则您必须重新实现整个Orchard数据层(这是一个过度的操作)
你只需要:
- 创建从
派生的部件(而不是ContentPart
,因为您不希望将其存储在Orchard数据库中)。那么ContentPart
- 为您的部件添加一个处理程序,连接到适当的生存期事件(如
),并从后端加载给定内容项id和部件类型组合的数据李>onload
- 为您的部件添加一个驱动程序(像往常一样),并将数据存储逻辑放入
方法中李>编辑器
通过这种方式,您将拥有一个存储在Orchard数据库中没有任何数据的部件,该部件完全从外部源加载。如果您使用的是Orchard内容项,则
Id
已经存在-无需存储新的。您需要使用一些标识符来绑定Orchard和后端存储,否则您必须重新实现整个Orchard数据层(这是一个过度的操作)
你只需要:
- 创建从
派生的部件(而不是ContentPart
,因为您不希望将其存储在Orchard数据库中)。那么ContentPart
- 为您的部件添加一个处理程序,连接到适当的生存期事件(如
),并从后端加载给定内容项id和部件类型组合的数据李>onload
- 为您的部件添加一个驱动程序(像往常一样),并将数据存储逻辑放入
方法中李>编辑器
如果您不需要这样做,那么您应该构建控制器操作(可能还有小部件)来显示数据。即使你这样做了,你仍然可以从许多Orchard的事情中受益,比如主题化。如果我错了,请纠正我,但是为了在ContentHandler中填充ContentPart(请参阅@piotr szmyd的帖子),你需要在Orchard中存储某种ID。否则,您将使用什么从Web服务查找数据?这正是我试图避免的,因为我们不想通过Orchard存储查找ID,所以导致我不断重复。我想我可以设法进入,但我将尝试为Raven实现IRepository。如果我错了,请纠正我,但为了在ContentHandler中填充ContentPart(请参阅@piotr szmyd的帖子),您需要在Orchard中存储某种ID。否则,您将使用什么从Web服务查找数据?这正是我试图避免的,因为我们不想通过Orchard存储查找ID,所以导致我不断重复。我原以为我可以在里面混过去,但我要尝试为Raven实现IRepository。