2013-02-13 46 views
0

在ASP.NEt應用程序中,我們有一個XSD文件和一個web.config文件。如何阻止XSD設計器將數據庫名稱作爲前綴到XSD代碼隱藏表中

內,我們有這樣指定的連接字符串配置文件:

<add name="DbConnectionString" connectionString="Data Source=sqldb;Initial Catalog=TestDB;Persist Security Info=True;User ID=user;Password=password;" providerName="System.Data.SqlClient"/> 

和XSD代碼隱藏之內,我們有以下行(自動生成)爲每個表適配器選擇命令:

<DbSource ConnectionRef="DbConnectionString (Web.config)" DbObjectName="dbo.CUSTOMER" ... 

但是,如果我在設計器中打開表適配器查詢並修改SQL,則後面的代碼中的行將更改爲:

<DbSource ConnectionRef="DbConnectionString (Web.config)" DbObjectName="TestDb.dbo.CUSTOMER" ... 

它在DbObjectName中指定的表名的開始處添加'TestDb'。

顯然,當我們將這個網站發佈到實時系統時,這將會是錯誤的,因爲即使我們將連接字符串更改爲web.config中的'LiveDb',它也會嘗試從TestDB獲取 數據。

有沒有人遇到過這種情況,是否有停止XSD設計器停止將數據庫名稱添加到表的前綴的方法?

謝謝

+0

你可以分享webonfg指定您的ConnectionString ... – 2013-02-13 17:05:13

+0

我與它更新的問題。 – 03Usr 2013-02-14 08:47:55

回答

1

當您將不同數據庫中的表格添加到數據集時發生這種情況。在向數據集添加表或查詢時,不會獲取不同的數據庫或連接字符串。請檢查您添加到數據集的所有表格。然後重新創建與當前數據集具有相同問題的表。添加數據集表時不要更改連接名稱。使用web配置中指定的相同連接字符串。

感謝