当前位置: 首页>>代码示例>>C#>>正文


C# LibraryChannel.GetSystemParameter方法代码示例

本文整理汇总了C#中LibraryChannel.GetSystemParameter方法的典型用法代码示例。如果您正苦于以下问题:C# LibraryChannel.GetSystemParameter方法的具体用法?C# LibraryChannel.GetSystemParameter怎么用?C# LibraryChannel.GetSystemParameter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在LibraryChannel的用法示例。


在下文中一共展示了LibraryChannel.GetSystemParameter方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: GetRemoteBiblioDbNames

        internal static int GetRemoteBiblioDbNames(
            string strUrl,
            string strUserName,
            string strPassword,
            out List<string> dbnames,
            out string strError)
        {
            strError = "";
            dbnames = new List<string>();

            string strValue = "";

            LibraryChannel channel = new LibraryChannel();
            channel.Url = strUrl;

            try
            {
                long lRet = channel.Login(strUserName,
    strPassword,
    "type=worker,client=dp2circulation|" + Program.ClientVersion,
    out strError);
                if (lRet != 1)
                {
                    strError = "对服务器 '" + channel.Url + "' 以用户 '" + strUserName + "' 进行登录时发生错误: " + strError;
                    return -1;
                }

                lRet = channel.GetSystemParameter(null,
                    "system",
                    "biblioDbGroup",
                    out strValue,
                    out strError);
                if (lRet == -1)
                {
                    strError = "针对服务器 " + channel.Url + " 获得书目库信息过程发生错误:" + strError;
                    return -1;
                }
            }
            finally
            {
                channel.Close();
            }

            {
                // 解析 XML
                XmlDocument dom = new XmlDocument();
                dom.LoadXml("<root />");

                try
                {
                    dom.DocumentElement.InnerXml = strValue;
                }
                catch (Exception ex)
                {
                    strError = "category=system,name=biblioDbGroup 所返回的 XML 片段在装入 InnerXml 时出错: " + ex.Message;
                    return -1;
                }

                XmlNodeList nodes = dom.DocumentElement.SelectNodes("database");

                foreach (XmlNode node in nodes)
                {
                    string strDbName = DomUtil.GetAttr(node, "biblioDbName");
                    dbnames.Add(strDbName);
                }
            }

            return 0;
        }
开发者ID:renyh1013,项目名称:dp2,代码行数:69,代码来源:PageCenter.cs

示例2: button_test_channelAttack_Click

        private void button_test_channelAttack_Click(object sender, EventArgs e)
        {

            _stop = new DigitalPlatform.Stop();
            _stop.Register(this.MainForm.stopManager, true);	// 和容器关联

            _stop.OnStop += new StopEventHandler(this.DoStop);
            _stop.Style = StopStyle.EnableHalfStop;
            _stop.Initial("正在测试耗费通道 ...");
            _stop.BeginLoop();

            this.button_test_channelAttack.Enabled = false;
            this.numericUpDown_test_tryChannelCount.Enabled = false;
            try
            {
                for (int i = 0; i < this.numericUpDown_test_tryChannelCount.Value; i++ )
                {
                    Application.DoEvents();

                    if (_stop != null && _stop.State != 0)
                        break;

                    LibraryChannel channel = new LibraryChannel();
                    channel.Url = this.MainForm.LibraryServerUrl;

                    channel.BeforeLogin -= new DigitalPlatform.CirculationClient.BeforeLoginEventHandle(Channel_BeforeLogin);
                    channel.BeforeLogin += new DigitalPlatform.CirculationClient.BeforeLoginEventHandle(Channel_BeforeLogin);

                    string strValue = "";
                    string strError = "";
                    long lRet = channel.GetSystemParameter(_stop,
                        "library",
                        "name",
                        out strValue,
                        out strError);
#if NO
                    if (lRet == -1)
                    {
                        if (channel.ErrorCode == DigitalPlatform.CirculationClient.localhost.ErrorCode.OutofSession)
                            break;
                    }
#endif

                    _stop.SetMessage(i.ToString());
                }
            }
            finally
            {
                this.numericUpDown_test_tryChannelCount.Enabled = true;
                this.button_test_channelAttack.Enabled = true;

                _stop.EndLoop();
                _stop.OnStop -= new StopEventHandler(this.DoStop);
                _stop.Initial("");

                if (_stop != null) // 脱离关联
                {
                    _stop.Unregister();	// 和容器关联
                    _stop = null;
                }
            }
        }
开发者ID:paopaofeng,项目名称:dp2,代码行数:62,代码来源:TestForm.cs

示例3: GetLibraryDataDir

        // 获得 dp2Library 数据目录
        int GetLibraryDataDir(out string strDataDir, out string strError)
        {
            strError = "";
            strDataDir = "";

            if (this.textBox_dp2LibraryUrl.Text == "")
            {
                strError = "尚未指定 dp2Library 服务器 URL";
                return -1;
            }

            if (this.textBox_manageUserName.Text == "")
            {
                strError = "尚未指定代理帐户的用户名";
                return -1;
            }

            if (this.textBox_managePassword.Text != this.textBox_confirmManagePassword.Text)
            {
                strError = "代理帐户 密码 和 再次输入密码 不一致。请重新输入。";
                return -1;
            }

            using (LibraryChannel channel = new LibraryChannel())
            {
                channel.Url = this.textBox_dp2LibraryUrl.Text;

                // Debug.Assert(false, "");
                string strParameters = "location=#setup,type=worker,client=dp2OPAC|0.01";  // 2016/4/26 加上 0.01 部分
                long nRet = channel.Login(this.textBox_manageUserName.Text,
                    this.textBox_managePassword.Text,
                    strParameters,
                    out strError);
                if (nRet == -1)
                {
                    strError = "以用户名 '" + this.textBox_manageUserName.Text + "' 和密码登录失败: " + strError;
                    return -1;
                }

                try
                {
                    if (nRet == 0 || StringUtil.IsInList("getsystemparameter", channel.Rights) == false)
                    {
                        channel.BeforeLogin -= new BeforeLoginEventHandle(channel_BeforeLogin);
                        channel.BeforeLogin += new BeforeLoginEventHandle(channel_BeforeLogin);

                        strError = "为获取 dp2Library 数据目录配置信息, 请用超级用户身份登录。";
                        nRet = channel.DoNotLogin(ref strError);
                        if (nRet == -1 || nRet == 0)
                        {
                            strError = "以超级用户身份登录失败: " + strError + "\r\n\r\n因此无法获取 dp2Library 数据目录配置信息";
                            return -1;
                        }
                    }

                    nRet = channel.GetSystemParameter(
            null,
            "cfgs",
            "getDataDir",
            out strDataDir,
            out strError);
                    if (nRet == -1)
                        return -1;
                }
                finally
                {
                    channel.Logout(out strError);
                }

                return 0;
            }
        }
开发者ID:renyh1013,项目名称:dp2,代码行数:73,代码来源:InstallOpacParamDlg.cs

示例4: GetDatabaseDef

        // 获得 dp2library <virtualDatabases> 数据库定义
        // return:
        //      -1  error
        //      0   成功
        static int GetDatabaseDef(
            string strLibraryWsUrl,
            string strUserName,
            string strPassword,
            out string strXml,
            out string strError)
        {
            strError = "";
            strXml = "";

            using (LibraryChannel Channel = new LibraryChannel())
            {

                Channel.Url = strLibraryWsUrl;

                // return:
                //      -1  error
                //      0   登录未成功
                //      1   登录成功
                long lRet = Channel.Login(strUserName,
                    strPassword,
                    "location=z39.50 server,type=worker,client=dp2ZServer|0.01",
                    out strError);
                if (lRet == -1)
                    return -1;

                if (lRet == 0)
                {
                    strError = "登录未成功:" + strError;
                    return -1;
                }

                lRet = Channel.GetSystemParameter(
    null,
    "opac",
    "databases",
    out strXml,
    out strError);
                if (lRet == -1)
                    return -1;

                return 0;
            }
        }
开发者ID:renyh1013,项目名称:dp2,代码行数:48,代码来源:InstallZServerDlg.cs


注:本文中的LibraryChannel.GetSystemParameter方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。