以编程方式将XML文件上传到SSRS服务器

问题描述:

如何以编程方式将XSLT文件上传到SSRS服务器数据库? 我想要与'上传文件'完全相同的功能,最好使用'rs'命令。以编程方式将XML文件上传到SSRS服务器

我已经试过rs.CreateResource,但它似乎并没有对XML/XSLT文件的工作(尽管它为Excel和图像文件)

据我所知,操纵SSRS分贝,不支持。 感谢

终于发现问题了。 XSLT文件正在上传,文件末尾有一个空尾字节。必须使用十六进制查看器才能看到这一点。

要修复它,我将数组复制到另一个数组中,减去最后一个字符,现在都很好。

Dim Temp() As Byte = New Byte(ArrayLength-1) {} 
For i As Integer = 0 To ArrayLength-1 
    Temp(i)=Contents(i) 
Next 
rs.CreateResource(XSLTFileName, ReportFolder, True, Temp, "application/xml", Nothing) 

这是当我尝试上传的xml文件SSMS生成的代码: - 昏暗资源的String =“家” 昏暗家长的String =“/” 昏暗覆盖由于布尔=假 昏暗的内容()作为字节=新的字节(){} 昏暗的Mime类型的String = “文本/ xml” 的 昏暗的属性(-1)作为Microsoft.SqlServer.ReportingServices2005。[属性]

RS.CreateResource(Resource, Parent, Overwrite, Contents, MimeType, Properties) 

你指定正确的MimeType?

+0

我正在尝试上面的代码。 你能写下你的代码的几行吗? 将数据放入内容的部分 - 是否使用了stream.Read(...)? – 2010-05-06 08:38:12

+0

代码由SSMS编写。但我认为你将能够做到这一点: - stream = File.OpenRead(“”) fileData = New [Byte](stream.Length){} stream.Read(fileData, 0,CInt(stream.Length)) – SPE109 2010-05-06 11:11:55

+0

是这就是我所做的。我的代码: Dim stream As FileStream = File.OpenRead(dir + filename) Dim Contents()As Byte = New Byte(stream.Length){} stream.Read(Contents,0,CInt(stream.Length) ) stream.Close() rs.CreateResource(XSLTFilename,ReportFolder,True,Contents,“application/xml”,Nothing) – 2010-05-07 01:42:28