我想知道如何在Orchard模块中添加可配置项(类似于webapp中的appsettings键值)。任何人都可以指向网络中正确的来源/网址吗?
答案 0 :(得分:1)
Orchard拥有丰富的设置基础架构。它不像appsettings.config那样简单,但功能更强大。您可以将设置添加到站点(显示在仪表板的主“设置”部分中),也可以添加到特定内容类型,内容部分,字段甚至是附加到特定内容类型的部分。您可以定义自定义设置部件,以便最终用户可以通过仪表板管理您的设置。
有关网站设置和内容类型设置的示例,您可以查看Orchard.Comments模块。还有一些关于在您的模块中创建自己的自定义设置的好文章:
http://www.szmyd.com.pl/blog/how-to-add-settings-to-your-content-parts-and-items
http://www.szmyd.com.pl/blog/using-custom-settings-in-orchard-part-2-content-type-settings
答案 1 :(得分:0)
我认为实现这一目标的正确方法是创建一个Record和exploit orchards数据库迁移功能。 Orchard完成了繁重的任务,最终得到了一个强类型的对象和存储库!我相信Orchard网站上的示例将此技术用于自定义内容类型,但您可以创建它们而无需创建模型
public class Item {
public string Key {get;set;}
public string Value {get;set;}
}
然后在迁移中定义表格,其表格名称等于您的模型名称
SchemaBuilder.CreateTable("Item",
table => table
.Column<string>("Key",column => column.PrimaryKey().Identity())
.Column<string>("Value", column => column.NotNull()
.WithLength(30)
然后你可以注入一个你需要它的存储库
public class MyDriver : ContentFieldDriver<MyPart>
{
public MyDriver(IRepository<Item> itemRepository) {... }
多数民众赞成!