二开案例.表单插件.读取Common.config配置

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

二开案例.表单插件.读取Common.config配置

【应用场景】

读取Common.config配置文件的appSettings配置节中的参数值。


【案例演示】

使用表单插件读取Common.config配置文件的appSettings配置节中的参数值。


【实现步骤】

<1>编写表单插件,代码如下。

using Kingdee.BOS;
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Util;
using System;
using System.ComponentModel;
using System.Configuration;
using System.IO;

namespace Jac.XkDemo.BOS.Business.PlugIn
{
    /// <summary>
    /// 【表单插件】读取Common.config配置
    /// </summary>
    [Description("【表单插件】读取Common.config配置"), HotUpdate]
    public class ReadCommonConfigFormPlugIn : AbstractDynamicFormPlugIn
    {
        public override void BarItemClick(BarItemClickEventArgs e)
        {
            base.BarItemClick(e);
            if (e.BarItemKey.Contains("test"))
            {
                Read();
            }
        }
        /// <summary>
        /// 方式1:借用KDConfiguration读取配置数据
        /// </summary>
        private void Read()
        {
            var managementSiteUrl = KDConfiguration.Current.GetAppSettingItemValue("managementSiteUrl");
            var isManagementSite = KDConfiguration.Current.GetAppSettingItemValue("isManagementSite");
            var MaxPageRow = KDConfiguration.Current.GetAppSettingItemValue("MaxPageRow");
            var msg = string.Format("managementSiteUrl:{0}\r\nisManagementSite:{1}\r\nMaxPageRow:{2}"
                , managementSiteUrl
                , isManagementSite
                , MaxPageRow);
            this.View.ShowMessage(msg);
        }
        /// <summary>
        /// 方式2:从指定路径读取配置数据
        /// </summary>
        public void Read2()
        {
            var dll = new Uri(typeof(KDConfiguration).Assembly.CodeBase).LocalPath;
            var sitedir = Directory.GetParent(Path.GetDirectoryName(dll)).FullName;
            var path = Path.Combine(sitedir, @"App_Data\Common.config");
            var file = new ExeConfigurationFileMap() {ExeConfigFilename = path};
            var configurationManager = ConfigurationManager.OpenMappedExeConfiguration(file, ConfigurationUserLevel.None);
            var managementSiteUrl = configurationManager.AppSettings.Settings["managementSiteUrl"].Value;
            var isManagementSite = configurationManager.AppSettings.Settings["isManagementSite"].Value;
            var MaxPageRow = configurationManager.AppSettings.Settings["MaxPageRow"].Value;
            var msg = string.Format("managementSiteUrl:{0}\r\nisManagementSite:{1}\r\nMaxPageRow:{2}"
                , managementSiteUrl
                , isManagementSite
                , MaxPageRow);
            this.View.ShowMessage(msg);
        }
    }
}


<2>拷贝插件组件到应用站点的WebSite\Bin目录下,重启IIS。


<3>BOSIDE扩展采购订单,注册表单插件,保存元数据,开发完毕。


【功能验证】

<1>登录业务站点,打开采购订单新增界面,点击菜单test,如下图。

Common.config配置文件如下图。

---------------------------------------------------------------------------------------------------------













【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696


二开案例.表单插件.读取Common.config配置

【应用场景】读取Common.config配置文件的appSettings配置节中的参数值。【案例演示】使用表单插件读取Common.config配置文件的appSettings...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息