2017-09-03 88 views
0

我正在开发一个很久以前由其他人开发的视觉工作室解决方案。这是为asp.net 2.现在,需要添加一些新功能。在另一个项目中使用web.config?

在上述方案中,它有几个项目,包括myProject.Data,myProject.Business,...,myProject.Website。随着时间的推移,不同的开发者进行了改变

在myProject.Data,它定义了一个SQL服务器连接字符串常量,并用它做一些SQL工作。这用于myProject.Website。在myProject.Website中,它也从网络驱动器读取一些文件,并进行一些处理。

现在,我开发它在我的地方,而不是在公司的环境,所以我不能访问网络驱动器,和SQL将是我本地的SQL Express。在这种情况下,是否有一种很好的方法来配置它,这样,我可以简单地更改一个配置,它将编译我的开发环境或生产的代码?

在myProject.Website,我可以添加一个应用程序键为开发环境,因此,它会读取我的地方,而不是网络驱动器中的文件。但是,问题是:如何在myProject.Data中读取此密钥?

或者,有没有另外一种方法来做到这一点?

回答

0

现在,我开发它在我的本地,而不是在公司的环境中,所以我无法访问网络驱动器,并且sql将是我的本地sql express。在这种情况下,是否有一种很好的方法来配置它,这样,我可以简单地更改一个配置,它将编译我的开发环境或生产的代码?

通常,连接到数据库应该使用可配置的连接字符串来完成。因此,您应该在web.config中具有(或定义)一个可配置的键来表示数据库连接字符串并使用它进行连接。此外,请注意,通过这种方式,更改web.config将不会“编译”任何内容,并且更改应该无需重建项目即可生效。看到here(节连接字符串)

在myProject.Website,我可以添加一个应用程序键为开发环境,因此,它会读取我的地方,而不是网络驱动器中的文件。但是,问题是:如何在myProject.Data中读取此密钥?

你不能轻易读取另一个项目的配置(除非它在该项目中正在使用的类库或者你愿意读取和分析该xml文件!),但重新定义该密钥有什么问题第二个项目?

一般来说,我认为你不明白的web.config的概念非常好。因此,遵循像this这样的良好教程可以帮助您掌握它。祝你好运。

+0

感谢您的回复。我完全理解web.config。这是一个非常古老的项目,我试图找出一种方法来使这个简单而不会变化太多,因为它不支付。 :) – urlreader

相关问题