首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法为密钥名找到Kentico 9全局设置

无法为密钥名找到Kentico 9全局设置
EN

Stack Overflow用户
提问于 2016-07-23 16:13:25
回答 1查看 216关注 0票数 0

我正在尝试为自定义模块创建设置。我正在升级,从第8版升级到第9版。第8版的代码运行良好。我在default2.aspx上测试代码。这是我的代码和错误:

错误:

找不到键名“AvalaraJMALicenseKeyStartDate”的全局设置

代码在这里显示了错误:

代码语言:javascript
复制
    SettingsKeyInfoProvider.SetSettingsKeyInfo(si);

代码:

代码语言:javascript
复制
    //Insert new SettingsKey into database
    string siteName = CMS.SiteProvider.SiteContext.CurrentSiteName;
    int siteID = CMS.SiteProvider.SiteContext.CurrentSiteID;
    DataSet sites = CMS.SiteProvider.SiteInfoProvider.GetSites();

    /// <summary>
    /// creates custom settings for JMA Kentico Software in settings area of site manager
    /// </summary>
    public void CreateAvalaraSettings()
    {

        //create the avalara category, if it doesn't exist
        SettingsCategoryInfo category = SettingsCategoryInfoProvider.GetSettingsCategoryInfoByName("JMA.Avalara");
        if (category == null)
        {
            SettingsCategoryInfo se = new SettingsCategoryInfo();
            se.CategoryName = "JMA.Avalara";
            se.CategoryDisplayName = "Avalara";
            SettingsCategoryInfoProvider.SetSettingsCategoryInfo(se);
        }

        #region avalara settings

        //if the setting does not exist, then create it
        if (SettingsKeyInfoProvider.GetSettingsKeyInfo(siteName + ".AvalaraJMALicenseKeyStartDate", siteID) == null)
        {
            // Create and set up new SettingsKey
            SettingsKeyInfo si = new SettingsKeyInfo();
            si.KeyName = siteName + ".AvalaraJMALicenseKeyStartDate";
            si.KeyDisplayName = "AvalaraJMALicenseKeyStartDate";
            si.KeyDescription = "AvalaraJMALicenseKeyStartDate";
            si.KeyType = "string";
            si.KeyDefaultValue = DateTime.Now.ToString();
            si.KeyValue = DateTime.Now.ToString();
            si.SiteID = siteID;
            si.KeyIsGlobal = false;
            si.KeyCategoryID = category.CategoryID;
            SettingsKeyInfoProvider.SetSettingsKeyInfo(si);

        }
EN

回答 1

Stack Overflow用户

发布于 2016-07-24 22:09:26

我删除了这段代码,它起了作用:

代码语言:javascript
复制
si.SiteID = siteID;
si.KeyIsGlobal = false;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38543819

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档