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>

这是来自一个教程。我涵盖了本书前半部分的所有内容,但这似乎很奇怪。

4

2 回答 2

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

如果删除标签不存在,并且该连接字符串也被定义在链的上层,您的应用程序将使用上层定义的那个,而忽略 web.config 中定义的那个(这可能会很混乱!)。这就是需要删除标签的原因。

另请参阅: 使用 inheritInChildApplications 避免子 Web 应用程序中的 web.config 继承

于 2012-06-08T19:48:46.053 回答
1

您添加名称 BalloonShopConnection 的连接字符串。您的 sql 服务器名称(本地)\SqlExpress;你的数据库是 BalloonShop 用户是 balloonshop 所以你添加第二个非常相似的:)

于 2012-06-08T19:43:19.270 回答