0

目标:

根据我的 ASP.NET 网站上的用户查询从第 3 方数据库中检索信息

细节:

我需要能够搜索第三方网站以获取与药物相关的信息。基本上,这就是我的任务:用户开始输入他们在实验中使用的药物的名称,并且在他们输入第 3 方网站(例如,herehere)时,会询问并提出建议根据他们输入的内容制作。一旦他们做出选择,就会从第三方数据库中检索某些特性(分子量、化学结构等)并存储在我们的数据库中。PharmaGKB.org的搜索栏几乎是我需要实现的,但我需要访问第 3 方数据库。我正在处理的网站是 ASP.NET/C#。

问题:

我真的不知道从哪里开始。此处页面底部有一个可下载的 Perl 示例,但它并没有对我有太大帮助。我不知道如何实现这一点,甚至找不到有关如何做到这一点的信息。有人建议使用 AJAX 工具包,但我不确定这是否能解决问题。JavaScript 也在考虑之中,但同样,我也不确定这是否足够。

Perl 示例连接

如前所述,这是Pharmgkb.org网站上给出的 Perl 示例的片段:

my $call = SOAP::Lite
-> readable (1)
-> uri('SearchService')
-> proxy('http://www.pharmgkb.org/services/SearchService')
-> search ($ARGV[0]);

但是,我不确定如何实现这是 C#/ASP.NET/JavaScript。Stack Overflow 上有一个关于在 C# 中嵌入 Perl 的问题,但它也需要一个 C 包装器,而且我认为解决这个问题不需要或明智地使用三种语言。

4

1 回答 1

3

继续从评论到您的帖子,这就是我认为您可以做的事情:

  1. 将服务引用添加到您的 Web 项目。在地址中,使用这个:http ://www.pharmgkb.org/services/SearchService?wsdl 。
  2. 单击“前往”。该向导会将服务识别为 SearchServiceService。在下面的命名空间文本框中,命名为“SearchServiceReference”。
  3. 您的服务方法和数据对象将被创建(连同所有其他必要的位来运行您的服务)。
  4. 然后,您可以使用服务参考,例如:

    公共静态对象[]搜索(字符串搜索字符串){

            using (var searchSeviceClient = new SearchServiceReference.SearchServiceClient())
            {
                return searchSeviceClient.search(searchString);
            }
        }
    

此外,考虑到您的问题的整个场景,您可能希望此服务在 javascript/jQuery 的文本更改事件上运行。您可以在本文中学习如何使用 ajax 从 jQuery 调用代码隐藏方法:jquery ajax calling Wcf service or some method in Code behind from Client Side

于 2012-06-28T21:13:49.823 回答