我只是想在VS2012中创建共享数据源而不选择整个数据库方案。我们主要通过sql查询来完成所有数据集查询。
我发现了这个,但我仍然无法创建共享数据源。
http://msdn.microsoft.com/en-us/library/ms159165.aspx
For an embedded data source, verify that Embedded connection is selected.
不存在。
那么如何仅使用连接字符串在VS2012中创建共享数据源呢?
答案 0 :(得分:1)
就SSRS而言,DataSource只是xml结构中元素中的连接字符串。共享的只是一个保留为它自己的对象,然后rdl元素(报告)在它们的xml中有一个对该对象的引用。想想一个rds文件(SSRS的数据源),因为这与.NET标准连接字符串非常相似:
Data Source=(server);Initial Catalog=(database)
另外,您可以存储凭据以模拟运行报告的人员。因此,您可以使代理用户运行数据库连接。然而,SSRS通过名为“商业智能开发工作室”的GUI来实现这一点,它是Visual Studio的一个附加组件,通常SQL Server版本与VS版本EXCEPT FOR 2012相匹配。那个创建VS 2010的shell Visual Studio仅适用于BIDS
据我所知,您应该直接在BIDS中创建这些文件,而不是直接破解RDS文件,除非您使用ReportService2010.asmx Web服务来破坏它在.NET中的属性(这是更多的工作。)。
要添加一个,您只需执行此操作:
一般来说,SSRS对其所做的一切都有三个部分
通常,报告可以嵌入所有内容,或者仅引用它们使用的所有内容。对于部署而言,引用通常更容易,因为SSRS旨在查看DataSource是否首先存在,并且默认情况下不会覆盖它们。因此,如果您重复使用数据源,只要其策略设置正确,从长远来看就容易多了。
如果您只想知道rds文件的结构,它们看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<RptDataSource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="Test">
<ConnectionProperties>
<Extension>SQL</Extension>
<ConnectString>Data Source=TestServer;Initial Catalog=TestDatabase</ConnectString>
</ConnectionProperties>
<DataSourceID>45be0ac1-80a8-4d5c-906b-c13b03298e0a</DataSourceID>
</RptDataSource>