SSRS呼叫外部URL / Web服务

时间:2011-08-18 00:05:19

标签: reporting-services ssrs-2008

我们正在设计具有多语言界面的报告。我们开发了返回特定单词翻译的Web服务。有没有办法通过网络服务或特定网址调用报告中使用的标签的翻译。

例如

之类的东西
http://domain.com/translate?w=WORD-TO-Translate&L=ar

1 个答案:

答案 0 :(得分:0)

我打算建议创建一个可以执行此操作的自定义程序集,但是当它从Report Builder运行时,它似乎无法在我的SSRS服务器上运行。我想知道从自定义程序集连接到Web服务是否存在问题(或者我做错了)。相反,我会指向another method进行翻译。

如果您想要选择自定义程序集方法,这里是我正在使用的代码:

using System;
using System.IO;
using System.Net;

namespace SSRSCustomAssembly
{
    public class Translate
    {
        public static string TranslateString(string input, string locale)
        {
            string url = string.Format("http://domain.com/translate?w={0}&L={1}", input, locale);

            HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
            req.Method = "GET";

            HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
            StreamReader sr = new StreamReader(resp.GetResponseStream());
            return sr.ReadToEnd();
        }
    }
}

在您的报告中,只需添加对程序集的引用,通过使用表达式来调用它:     = SSRSCustomAssembly.Translate.TranslateString(“word”,“en”)

相关问题