2012-06-08 313 views
1

你能幫我理解這段代碼在簡單英文中的作用嗎?這是一個初學者。先謝謝你。連接字符串

<connectionStrings> 
<add name="BalloonShopConnection" connectionString="Server=(local)\Sql➥ 
Express; Database=BalloonShop; User=balloonshop; Password=ecommerce" ➥ 
providerName="System.Data.SqlClient" /> 
<remove name="LocalSqlServer"/> 
<add name="LocalSqlServer" connectionString="Server=(local)\SqlExpress;➥ 
Database=BalloonShop; User=balloonshop; Password=ecommerce" providerName=➥ 
"System.Data.SqlClient" /> 
</connectionStrings> 

這是來自教程。我涵蓋了本書前半部分的所有內容,但這看起來很奇怪。

+1

哪一部分覺得奇怪,你呢? –

+1

你需要一點研究。這是一個很好的開始:[ConnectionSTringsSettings Class](http://msdn.microsoft.com/en-us/library/system.configuration.connectionstringsettings) – Jeremy

回答

2

您的應用程序的web.config只是您的應用程序獲取配置設置的一部分。整個配置是web.config和machine.config文件的組合,以及IIS中定義的設置。這條線:

<remove name="LocalSqlServer"/> 

意味着有一個名爲一個連接字符串LocalSqlServer別處定義,你可能會從比你的web.config其他一些進展。因此,在你的web.config文件中,他們明確地刪除了你另外得到的那個LocalSqlServer連接字符串,並用那個行下面定義的那個字符串替換它。該更改只會影響您的應用程序。這是在這裏解釋:http://weblogs.asp.net/jgalloway/archive/2012/01/17/10-things-asp-net-developers-should-know-about-web-config-inheritance-and-overrides.aspx

如果刪除標記不存在,並且該連接字符串也被定義在鏈上更高,您的應用程序將使用定義較高的一個,並忽略您的網絡中定義的一個。配置(這可能是相當混亂!)。這就是爲什麼需要刪除標籤。

參見: Avoid web.config inheritance in child web application using inheritInChildApplications

+0

hatchet:確實,特別是「刪除」部分,我不明白。你的解釋是簡單的英文,非常有幫助,針對我指定的用戶級別。非常感謝! –

1

添加名爲BalloonShopConnection的連接字符串。你的SQL服務器名稱(本地)\ SqlExpress;你的數據庫是BalloonShop用戶是氣球商店,所以你添加第二個是非常相似的:)