我正在尝试为网站的设置创建一个白名单部分,以便管理员用户输入被视为“白名单”的网址列表。我遇到了将这些信息存储在数据库中的问题。使用属于数据库的信息创建新内容类型时,可以使用以下命令:
public class ShareBarSettingsPart : ContentPart<ShareBarSettingsPartRecord> {
public string AddThisAccount {
get { return Record.AddThisAccount; }
set { Record.AddThisAccount = value; }
}
}
在数据库中设置AddThisAccount的值。我的问题是我需要数据库中的URL列表而不仅仅是单个项目。我尝试了以下但它给了我一个错误:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using Orchard.ContentManagement;
using Orchard.ContentManagement.Records;
namespace Speedbump.Models
{
public class SpeedBumpSettingsRecord : ContentPartRecord
{
public virtual List<string> whiteList { get; set; }
}
public class SpeedBumpSettingsPart : ContentPart<SpeedBumpSettingsRecord>
{
public List<string> whiteList
{
get { return Record.whiteList; }
set { Record.whiteList.Add(value); } //I need to be able to add a single record to the list here
}
}
}
非常感谢任何帮助,谢谢。
答案 0 :(得分:1)
List<string>
不支持作为记录属性类型。然而,这并不重要,因为您不应该使用记录来进行网站设置。请改用Store
和Retrieve
。任何现有的设置部分都会给你一个例子。